Sunteți pe pagina 1din 840

Ovation Algorithms Reference Manual

REF_1100
August 2011

Copyright Notice
Since the equipment explained in this document has a variety of uses, the user and those
responsible for applying this equipment must satisfy themselves as to the acceptability of each
application and use of the equipment. Under no circumstances will Emerson Process
Management be responsible or liable for any damage, including indirect or consequential losses
resulting from the use, misuse, or application of this equipment.
The text, illustrations, charts, and examples included in this manual are intended solely to explain
TM
the use and application of the Ovation Unit. Due to the many variables associated with specific
uses or applications, Emerson Process Management cannot assume responsibility or liability for
actual use based upon the data provided in this manual.
No patent liability is assumed by Emerson Process Management with respect to the use of
circuits, information, equipment, or software described in this manual.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any
form or by any means, including electronic, mechanical, photocopying, recording or otherwise
without the prior express written permission of Emerson Process Management.
The document is the property of and contains Proprietary Information owned by Emerson Process
Management and/or its subcontractors and suppliers. It is transmitted in confidence and trust, and
the user agrees to treat this document in strict accordance with the terms and conditions of the
agreement under which it was provided.
This manual is printed in the USA and is subject to change without notice.
Ovation is the mark of Emerson Process Management. Other marks are the property of their
respective holders.
Copyright Emerson Process Management Power & Water Solutions, Inc. All rights reserved.
Emerson Process Management
Power & Water Solutions
200 Beta Drive
Pittsburgh, PA 15238
USA
E-Mail: Technical.Communications@Emerson.com
Website: https://www.ovationusers.com

Summary of Changes
Ovation Algorithms Reference Manual
REF_1100
August 2011

The August 2011 version of Ovation Algorithms Reference Manual includes miscellaneous
corrections and clarifications to the following algorithms:

BALANCER (see page 81).

DEVICE (see page 126).

DEVICESEQ (see page 146).

FFISEL/FFISELX (see page 627).

LEADLAG (see page 263).

OFFDELAY (see page 313).

ONDELAY (see page 315).

ONESHOT (see page 317).

Contents
1

Introduction to Ovation algorithms

1.1

What are algorithms? .......................................................................................................... 1

General algorithm user information

2.1
2.2
2.3
2.4
2.5
2.6
2.7

What is hardware addressing for algorithms?..................................................................... 3


2.1.1
To determine an algorithm hardware address .................................................. 3
What is propagated point quality?....................................................................................... 4
Algorithm status and mode settings.................................................................................... 4
What is invalid number checking and quality checking for algorithms?.............................. 5
What are single precision floating point numbers? ............................................................. 6
What is the error information generated by algorithms?..................................................... 6
Binary to hexadecimal conversion for algorithms ............................................................... 6

Understanding tracking

3.1
3.2
3.3
3.4
3.5
3.6
3.7

What is tracking?............................................................................................................... 10
What is the purpose of tracking? ...................................................................................... 10
What is the tracking process? ........................................................................................... 11
What are the best practices for using tracking?................................................................ 12
What algorithms support tracking? ................................................................................... 13
Tracking examples ............................................................................................................ 15
Setting tracking signals for algorithms .............................................................................. 16

Algorithm classifications

4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14

What are algorithm classification groups? ........................................................................ 20


Alarm Manipulation algorithms.......................................................................................... 21
Artificial I/O algorithms (signal generators) ....................................................................... 21
Boolean Logic algorithms.................................................................................................. 22
Boolean Logic Memory algorithms.................................................................................... 23
Custom Calculation algorithms ......................................................................................... 23
Device Control algorithms ................................................................................................. 24
Fieldbus algorithms ........................................................................................................... 25
Filtering algorithms............................................................................................................ 26
Hardware Interface algorithms .......................................................................................... 27
Link Controller Module Interface algorithms ..................................................................... 28
Loop Interface Module algorithms..................................................................................... 29
Mathematical and Statistical algorithms............................................................................ 30
Modulating Control algorithms .......................................................................................... 31

REF_1100

19

Table of Contents

4.15
4.16
4.17
4.18
4.19
4.20
4.21
4.22
4.23
4.24
4.25
4.26
4.27

Monitor Function algorithms.............................................................................................. 32


Operator Interface algorithms ........................................................................................... 33
Point Format Conversion algorithms................................................................................. 34
Pulse Accumulator Module Interface algorithms............................................................... 35
Q-Line Interface algorithms............................................................................................... 36
Redundant Signal Processing algorithms ......................................................................... 37
Sequential Logic algorithms .............................................................................................. 38
Signal Compensation algorithms ...................................................................................... 39
System Diagnostic algorithms........................................................................................... 40
System Time Function algorithms..................................................................................... 40
Time/Counter Function algorithms.................................................................................... 41
Tracking algorithms........................................................................................................... 42
Turbine Interface algorithms ............................................................................................. 43

Standard algorithm reference pages

5.1

Using algorithm reference pages ...................................................................................... 48


5.1.1
Algorithm functional symbols........................................................................... 49
AAFLIPFLOP .................................................................................................................... 50
ABSVALUE ....................................................................................................................... 52
ALARMLIMIT..................................................................................................................... 53
ALARMMON...................................................................................................................... 58
ANALOG DEVICE (ADEVICE).......................................................................................... 60
ANALOGDRUM ................................................................................................................ 63
AND................................................................................................................................... 67
ANNUNCIATOR................................................................................................................ 69
ANTILOG........................................................................................................................... 72
ARCCOSINE..................................................................................................................... 74
ARCSINE .......................................................................................................................... 75
ARCTANGENT ................................................................................................................. 76
ASSIGN............................................................................................................................. 77
ATREND............................................................................................................................ 78
AVALGEN ......................................................................................................................... 80
BALANCER ....................................................................................................................... 81
BCDNIN............................................................................................................................. 86
BCDNOUT......................................................................................................................... 88
BILLFLOW......................................................................................................................... 90
BUFFER ............................................................................................................................ 92
CALCBLOCK .................................................................................................................. 106
CALCBLOCKD................................................................................................................ 114
COMPARE ...................................................................................................................... 120
COSINE........................................................................................................................... 121
COUNTER....................................................................................................................... 122
DBEQUALS..................................................................................................................... 124
DEVICE ........................................................................................................................... 126

5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.10
5.11
5.12
5.13
5.14
5.15
5.16
5.17
5.18
5.19
5.20
5.21
5.22
5.23
5.24
5.25
5.26
5.27
5.28

ii

45

REF_1100

Table of Contents

5.29
5.30
5.31
5.32
5.33
5.34

5.35
5.36
5.37
5.38
5.39

5.40
5.41
5.42
5.43
5.44
5.45
5.46
5.47
5.48
5.49
5.50
5.51
5.52
5.53
5.54
5.55
5.56
5.57
5.58
5.59
5.60
5.61
5.62
5.63
5.64
5.65

REF_1100

DEVICESEQ ................................................................................................................... 146


DEVICEX......................................................................................................................... 150
DFIELD............................................................................................................................ 170
DIGCOUNT ..................................................................................................................... 171
DIGDRUM ....................................................................................................................... 173
DIGITAL DEVICE............................................................................................................ 178
5.34.1
SAMPLER (Controlled Sampler) ................................................................... 179
5.34.2
VALVE NC (Non-Controlled Valve)............................................................... 181
5.34.3
MOTOR NC (Non-Controlled Motor)............................................................. 182
5.34.4
MOTOR (Simple Controlled Motor) ............................................................... 184
5.34.5
MOTOR 2-SPD (Two Speed or Bi-Directional Controlled Motor) ................. 187
5.34.6
MOTOR 4-SPD (Two Speed and Bi-Directional Controlled Motor) .............. 191
5.34.7
VALVE (Controlled Valve) ............................................................................. 196
DIVIDE ............................................................................................................................ 199
DROPSTATUS................................................................................................................ 202
DRPI1A ........................................................................................................................... 204
DVALGEN ....................................................................................................................... 206
FACEPLATE ................................................................................................................... 207
5.39.1
FACEPLATE -- DIGITAL DEVICE template.................................................. 210
5.39.2
FACEPLATE -- MASTATION template ......................................................... 214
FIELD .............................................................................................................................. 215
FIFO ................................................................................................................................ 217
FIRSTOUT ...................................................................................................................... 220
FLIPFLOP ....................................................................................................................... 225
FUNCTION...................................................................................................................... 227
GAINBIAS ....................................................................................................................... 231
GASFLOW ...................................................................................................................... 235
HEARTBEAT................................................................................................................... 240
HIGHLOWMON............................................................................................................... 243
HIGHMON ....................................................................................................................... 244
HISELECT....................................................................................................................... 245
HSCLTP .......................................................................................................................... 250
HSLT ............................................................................................................................... 251
HSTVSVP........................................................................................................................ 252
HSVSSTP........................................................................................................................ 253
INTERP ........................................................................................................................... 254
KEYBOARD .................................................................................................................... 258
LATCHQUAL................................................................................................................... 261
LEADLAG........................................................................................................................ 263
LEVELCOMP .................................................................................................................. 267
LOG................................................................................................................................. 271
LOSELECT...................................................................................................................... 272
LOWMON........................................................................................................................ 277
MAMODE ........................................................................................................................ 278
MASTATION ................................................................................................................... 280
MASTERSEQ.................................................................................................................. 289

iii

Table of Contents

5.66
5.67
5.68
5.69
5.70
5.71
5.72
5.73
5.74
5.75
5.76
5.77
5.78
5.79
5.80

5.81
5.82
5.83
5.84
5.85
5.86
5.87
5.88
5.89
5.90
5.91
5.92
5.93
5.94
5.95
5.96
5.97
5.98
5.99
5.100
5.101
5.102
5.103
5.104
5.105
5.106
5.107

iv

MEDIANSEL.................................................................................................................... 300
MULTIPLY....................................................................................................................... 308
NLOG .............................................................................................................................. 311
NOT................................................................................................................................. 312
OFFDELAY ..................................................................................................................... 313
ONDELAY ....................................................................................................................... 315
ONESHOT....................................................................................................................... 317
OR ................................................................................................................................... 319
PACK16........................................................................................................................... 320
PID .................................................................................................................................. 322
PIDFF .............................................................................................................................. 337
PNTSTATUS................................................................................................................... 350
POLYNOMIAL ................................................................................................................. 352
PREDICTOR ................................................................................................................... 354
PRIORITY Algorithm Package ........................................................................................ 358
5.80.1
PRIORITY...................................................................................................... 359
5.80.2
PRIORITY-EXT ............................................................................................. 375
5.80.3
PRIORITY-REJ.............................................................................................. 379
PSLT ............................................................................................................................... 382
PSVS............................................................................................................................... 383
PULSECNT ..................................................................................................................... 384
QAVERAGE .................................................................................................................... 385
QUALITYMON ................................................................................................................ 387
RATECHANGE ............................................................................................................... 389
RATELIMIT...................................................................................................................... 391
RATEMON ...................................................................................................................... 394
RESETSUM .................................................................................................................... 396
RLICONFIG..................................................................................................................... 399
RPACNT.......................................................................................................................... 402
RPAWIDTH ..................................................................................................................... 403
RSRSTATUS................................................................................................................... 404
RUNAVERAGE ............................................................................................................... 412
RUNTIME ........................................................................................................................ 414
RVPSTATUS................................................................................................................... 418
SATOSP.......................................................................................................................... 421
SELECTOR ..................................................................................................................... 422
SETPOINT ...................................................................................................................... 424
SIMTIME ......................................................................................................................... 427
SINE ................................................................................................................................ 428
SLCAIN ........................................................................................................................... 429
SLCAOUT ....................................................................................................................... 432
SLCDIN ........................................................................................................................... 435
SLCDOUT ....................................................................................................................... 439
SLCPIN ........................................................................................................................... 443
SLCPOUT ....................................................................................................................... 446

REF_1100

Table of Contents

5.108
5.109
5.110
5.111
5.112
5.113
5.114
5.115
5.116
5.117
5.118
5.119
5.120
5.121
5.122
5.123
5.124
5.125
5.126
5.127
5.128
5.129
5.130
5.131
5.132
5.133
5.134
5.135
5.136

SLCSTATUS ................................................................................................................... 450


SMOOTH......................................................................................................................... 454
SOFTSOE ....................................................................................................................... 456
SPTOSA.......................................................................................................................... 466
SQUAREROOT............................................................................................................... 467
SSLT ............................................................................................................................... 470
STATISTICS.................................................................................................................... 471
STEAMFLOW.................................................................................................................. 490
STEAMTABLE ................................................................................................................ 492
STEPTIME ...................................................................................................................... 495
SUM ................................................................................................................................ 500
SYSTEMTIME ................................................................................................................. 504
TANGENT ....................................................................................................................... 506
TIMECHANGE ................................................................................................................ 507
TIMEDETECT ................................................................................................................. 508
TIMEMON ....................................................................................................................... 510
TRANSFER ..................................................................................................................... 513
TRANSLATOR ................................................................................................................ 517
TRANSPORT .................................................................................................................. 521
TRNSFINDX.................................................................................................................... 523
TRUTHTBL...................................................................................................................... 524
TSLH ............................................................................................................................... 527
TSLP ............................................................................................................................... 528
UNPACK16 ..................................................................................................................... 529
VCLTP............................................................................................................................. 531
VSLT ............................................................................................................................... 532
XOR................................................................................................................................. 533
X3STEP........................................................................................................................... 534
2XSELECT ...................................................................................................................... 540

Q-Line algorithms

6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
6.10
6.11
6.12
6.13

What are Q-Line algorithms? .......................................................................................... 547


PVSPSLI ......................................................................................................................... 548
PWDIN ............................................................................................................................ 551
QLIPASS ......................................................................................................................... 554
QPACMD......................................................................................................................... 558
QPACMPAR.................................................................................................................... 564
QPASTAT........................................................................................................................ 566
QSDDEMAND ................................................................................................................. 567
QSDMODE...................................................................................................................... 569
QSRMA ........................................................................................................................... 570
QVP................................................................................................................................. 577
XFLOW............................................................................................................................ 580
XMA2............................................................................................................................... 587

REF_1100

547

Table of Contents

6.14
6.15

XML2 ............................................................................................................................... 598


XPIDSLI........................................................................................................................... 602

Foundation Fieldbus algorithms

7.1
7.2
7.3
7.4
7.5
7.6
7.7
7.8
7.9
7.10
7.11

Ovation Fieldbus algorithms and function blocks............................................................ 613


7.1.1
STAT bits used with function blocks ............................................................. 614
FFAI................................................................................................................................. 615
FFAO............................................................................................................................... 618
FFDI ................................................................................................................................ 621
FFDO............................................................................................................................... 624
FFISEL/FFISELX ............................................................................................................ 627
FFMAI.............................................................................................................................. 635
FFMAO............................................................................................................................ 638
FFMDI ............................................................................................................................. 640
FFMDO............................................................................................................................ 644
FFPID .............................................................................................................................. 648

Understanding the Ovation SIS algorithms

8.1

Ovation SIS Logic Solver algorithm table ....................................................................... 652


8.1.1
Algorithm types.............................................................................................. 654
LSAI................................................................................................................................. 655
LSALM............................................................................................................................. 657
LSAND ............................................................................................................................ 659
LSAVTR .......................................................................................................................... 661
LSBDE............................................................................................................................. 676
LSBFI .............................................................................................................................. 678
LSBFO............................................................................................................................. 681
LSCALC .......................................................................................................................... 683
8.9.1
LSCALC Expression Editor ........................................................................... 687
LSCEM ............................................................................................................................ 697
LSCMP ............................................................................................................................ 723
LSDI ................................................................................................................................ 725
LSDO............................................................................................................................... 727
LSDVC ............................................................................................................................ 734
LSDVTR .......................................................................................................................... 746
LSLIM .............................................................................................................................. 761
LSMID ............................................................................................................................. 764
LSNAND.......................................................................................................................... 768
LSNDE ............................................................................................................................ 770
LSNOR ............................................................................................................................ 772
LSNOT ............................................................................................................................ 774
LSOFFD .......................................................................................................................... 775
LSOND ............................................................................................................................ 777
LSOR............................................................................................................................... 779

8.2
8.3
8.4
8.5
8.6
8.7
8.8
8.9
8.10
8.11
8.12
8.13
8.14
8.15
8.16
8.17
8.18
8.19
8.20
8.21
8.22
8.23
8.24

vi

613

651

REF_1100

Table of Contents

8.25
8.26
8.27
8.28
8.29
8.30
8.31
8.32
8.33
8.34
8.35
8.36
8.37
8.38

LSPDE............................................................................................................................. 781
LSRET............................................................................................................................. 783
LSRS ............................................................................................................................... 785
LSSEQ ............................................................................................................................ 787
LSSR ............................................................................................................................... 790
LSSTD............................................................................................................................. 792
LSTP ............................................................................................................................... 797
LSXNOR.......................................................................................................................... 799
LSXOR ............................................................................................................................ 800
SIS connector algorithm table ......................................................................................... 801
GSECPARAMREF .......................................................................................................... 802
NONSECPARAM ............................................................................................................ 803
SECPARAM .................................................................................................................... 804
SECPARAMREF............................................................................................................. 805

Migrated special functions

9.1
9.2
9.3
9.4

What are migrated special functions?............................................................................. 807


WDPF to Ovation reference table ................................................................................... 808
WDPF special functions to Ovation algorithms............................................................... 815
What are migration algorithms? ...................................................................................... 821
9.4.1
MODETRANS................................................................................................ 822
9.4.2
SETSTATES.................................................................................................. 823

Index

REF_1100

807

825

vii

E C T I O N

Introduction to Ovation algorithms

IN THIS SECTION
What are algorithms? .......................................................................................................... 1

1.1

What are algorithms?


Algorithms are mathematical formulas that define a specific control strategy. An algorithm may be
thought of as a collection of system points that are controlled by the algorithm. The algorithm
reads values (inputs) and writes values (outputs) into points to accomplish certain desired actions
in the system. (See Ovation Record Types Reference Manual for information about point record
types.)
The Ovation Control Builder places these algorithms on control sheets to tell the Ovation control
system what algorithms to use, what points to associate with the algorithms, and in what order the
algorithms should execute. The Control Builder combines multiple algorithms and even multiple
control sheets to create an entire control strategy for a system process.
The Ovation algorithms are typically provided with the Ovation Controller, and are used to
implement a wide range of functionality for a Controller. Each algorithm is represented in the
Control Builder by a unique symbol.
For information on adding algorithms to sheets in the Control Builder, refer to Ovation Control
Builder User Guide.

REF_1100

E C T I O N

General algorithm user information

IN THIS SECTION
What is hardware addressing for algorithms?..................................................................... 3
What is propagated point quality?....................................................................................... 4
Algorithm status and mode settings .................................................................................... 4
What is invalid number checking and quality checking for algorithms?.............................. 5
What are single precision floating point numbers? ............................................................. 6
What is the error information generated by algorithms?..................................................... 6
Binary to hexadecimal conversion for algorithms ............................................................... 6

2.1

What is hardware addressing for algorithms?


Some algorithms (for example, an MASTATION algorithm) require the hardware address of the
associated I/O module in order to perform their functions. You must enter the hardware address
for the algorithm into the hardware address field.
For a point that is read from or written to an I/O card, the hardware address parameter indicates
the offset from where the pertinent I/O register resides.
Addressing that is initialized in the algorithm is either for Ovation cards or Q-line cards.

For Ovation, the address is determined by the module position in the I/O cabinet.

For Q-line, the hardware address is equal to the address directly jumpered on the card plus
the offset into the proper channel number (no doubling required).

2.1.1 To determine an algorithm hardware address


1. Access the Point Information window to view the module record (see Ovation Operator
Station User Guide).
2. Select the Hardware tab.
3. Note the hex representation of the hardware address for the module in the HD field.
4. The algorithm requires the base address, so take the D in the base address and convert it to
a zero.
5. Enter that value into the algorithm's hardware address field.
6. For example, if a Loop Interface module record's HD field is 0x9D, then 0x90 is entered in
the MASTATION'S hardware address field.

REF_1100

2.2 What is propagated point quality?

2.2

What is propagated point quality?


Many algorithms generate a quality setting for the output. In most cases, the quality of the output
equals the quality of the input. This is commonly called propagated quality. However, this simple
propagation is not true for all algorithms.
In general, the worst quality of the algorithm's input points is passed on to the output point for
each standard algorithm. For example, an input sensor failure causes BAD quality to propagate
through all standard algorithms that directly or indirectly use the input point. This BAD quality may
be used to reject certain algorithms to Manual mode. (Refer to the individual algorithm reference
pages for complete information.)
Process points may have one of the following quality values, assigned by the user or the system:

GOOD = Point is functioning properly.

FAIR = Typically an entered value.

POOR = Generated from certain algorithms if some inputs were BAD and some were GOOD.

BAD = Point is not functioning properly, typically caused by sensor failure.

Note: Algorithms propagate GOOD quality when in Manual mode.

2.3

Algorithm status and mode settings


The mode and status digital signals are set as follows:

SIGNAL

ACTION

Auto Mode

MASTATION sets the output Auto Mode signal TRUE when the
algorithm is in Auto mode.

High Limit Reached

All algorithms set the High Limit Reached output signal TRUE when
the output is at the high limit specified and the High Limit Reached
output signal is not scan removed.

Local Manual Mode

MASTATION sets the Local Manual Mode output signal TRUE when
the algorithm is in Local Manual mode.

Low Limit Reached

All algorithms set the Low Limit Reached output signal TRUE when
the output is at the low limit specified and the Low Limit Reached
output signal is not scan removed.

Manual Mode

MASTATION sets the output Manual mode signal TRUE when the
algorithm is in Manual mode.

REF_1100

2.4 What is invalid number checking and quality checking for algorithms?

2.4

What is invalid number checking and quality checking for


algorithms?
Most algorithms perform invalid number checking on analog input points. These points include
tracking inputs. If an invalid number is detected, the drop goes into alarm and the problem is
identified by Fault Code 66, Fault ID 3.
For algorithms, Fault Parameter 3 contains the number of the algorithm sheet detecting an invalid
number (for Ovation releases 3.1 and above, it contains the svg filename). These numbers are
reported as hexadecimal values. The Ovation fault information tool describes fault codes and
suggests possible user actions to correct the fault. To access the Ovation fault information tool,
log on to the Ovation/WDPF Users site and click Fault Information Tool in the left hand menu. Or,
enter the following URL to log on to the fault information tool directly:
https://www.ovationusers.com/FIT/index.asp
An invalid number is generated under exceptional conditions. An example of such conditions is
taking the square root of a negative number. The Function section in the individual algorithm
reference sheets identifies those algorithms which provide additional checking to avoid specific
exceptional conditions.
When an invalid number is input to an algorithm, generally the output of the algorithm is also
invalid and is marked with BAD quality. In the following algorithm reference sheets, each
algorithm that performs invalid number checking discusses how the invalid number is treated and
the results that occur from the invalid number.
There are three types of invalid numbers: indefinite, NAN, and denormal.

An indefinite invalid number is generated from a mathematical operation for which there is no
reasonable result.

A NAN (not-a-number) invalid number is an unrecognizable real number format and should
never occur.

A denormal invalid number is generated when the result of a mathematical operation is too
small to be represented in the 32-bit real number format used in the system. If an analog input
is a denormal invalid number, the drop is placed into alarm identified by Fault Code 66, Fault
ID 3.

However, certain algorithms store the denormal value into a temporary variable, convert it to zero,
and use that value (0) in the algorithm calculation. Consequently, these algorithms calculate a
valid output value with GOOD quality and the drop goes into alarm.
If the output of the algorithm is a denormal invalid number, then the value of the output is set to
zero and the drop is not placed into alarm. These denormal invalid numbers are displayed
throughout the system as zero.
If an invalid number is generated, the cause of the problem generate should be immediately
investigated and corrected since it could cause a control problem in the system.
In addition to invalid number checking, many algorithms generate a quality setting on the output.

REF_1100

2.5 What are single precision floating point numbers?

2.5

What are single precision floating point numbers?


The Ovation system is limited to single precision floating point numbers which can affect algorithm
precision. In certain cases, this may prevent an algorithm from writing a value beyond a certain
number if a single precision floating point limitation is reached. Although the internal algorithm
calculation can handle double precision floating point numbers, Ovation points are limited to
single precision values. More information is available by researching the IEEE754 floating point
standard.

2.6

What is the error information generated by algorithms?


The second status word in an analog or digital process point may contain error information
generated by an algorithm that processed the value of that point.
For analog and digital points, the 2W record field contains the second status word. If a bit is
TRUE, then the error indicated by that bit has been detected. If a bit is FALSE, then the error has
not been detected.

2.7

Binary to hexadecimal conversion for algorithms


The following binary to hexadecimal conversion table is included to assist you in using algorithms
that require binary to hexadecimal conversion.
Binary to Hexadecimal Conversion
BINARY

TO

HEX ADECIM AL CONVERSION T ABLE

BINARY

HEX ADECIM AL

DECIM AL

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

10

1011

11

1100

12

1101

13

1110

14

1111

15

REF_1100

2.7 Binary to hexadecimal conversion for algorithms

For example, in DIGDRUM, the following binary number represents the states of the 16 outputs in
a given step. The right-most bit represents Output 001, and the left-most bit represents Output
016. For example, if you want Step 5 to have the outputs in these states, I05 would be initialized
to 0x53C6.
Byte = 8 bits, Integer = 16 bits
Binary:
Hexadecimal:

REF_1100

0101

0011

1100

0110

0101001111000110B
0x53C6

E C T I O N

Understanding tracking

IN THIS SECTION
What is tracking?............................................................................................................... 10
What is the purpose of tracking?....................................................................................... 10
What is the tracking process? ........................................................................................... 11
What are the best practices for using tracking?................................................................ 12
What algorithms support tracking?.................................................................................... 13
Tracking examples ............................................................................................................ 15
Setting tracking signals for algorithms .............................................................................. 16

REF_1100

3.1 What is tracking?

3.1

What is tracking?
The tracking function is a sophisticated control feature that is unique to Ovation systems. Tracking
is implemented through the signals that connect the algorithms. Tracking may be defined as
aligning a portion of a control system which is not in control to the portion of the control system
which is in control.
To implement tracking in the Ovation system, tracking signals are sent between algorithms.
These signals tell the upstream algorithm whether or not to be in the tracking mode and what
value is required by the downstream algorithm to achieve the present output.
Typically, multiple control strategies (or modes) are defined to control a process. For example,
both manual and automatic control modes may be available. Multiple types of automatic control
may be available, such as flow control, level control, element control, and cascade control modes.
During the transition from one control mode to another, tracking is needed.
When transferring between control strategies (for instance, from manual to automatic control
modes), information is required by the newly selected control strategy to ensure a smooth
transition. These required values are obtained from the active control strategy and are provided to
the other available strategies. This exchange of information between control strategies is referred
to as tracking.
Tracking signals are automatically generated by the Control Builder. The Control Builder assigns
points to carry the tracking mode and value information. The insertion of tracking logic is
transparent to the user (requires no user input to implement). You have the option of turning
tracking off.
Tracking should be turned off for the following situations:

Tracking from a mathematical calculation.

When using PID to a setpoint to keep from winding up a PID, priority lower/raise. Typically, do
not allow tracking to change a setpoint.

Tracking can be blocked in the following ways:

3.2

Place the algorithms on a separate sheet. Since automatic tracking only occurs within a
sheet, tracking is effectively blocked.

Use Control Builder to remove tracking points from the TRIN entry fields.

What is the purpose of tracking?


There are two purposes for tracking:

Prevent bumps.
Changes in the mode of a process have the potential to disrupt the process. For example,
consider a situation where a control element is manually set to a low level, even though the
automatic control scheme is calculating a high level. If the control mode is changed to
automatic, a bump occurs as this control elements setting goes from low to high. If the
change is extreme, equipment damage could result. Methods used to avoid this type of rapid
adjustment are referred to as bumpless transfer.

10

REF_1100

3.3 What is the tracking process?

Reduce process upsets.


A process upset may be defined as a condition in which the control system causes the
process to temporarily move to an operating point which differs from the desired point. Often
the process upset is caused by failing to hold the integral action of a PID Controller in check;
this condition is called reset windup.
For example, a PID control scheme sums a Proportional component and an Integral
component. In certain situations, the value of the output may reach its limit (100%) while one
of the components is still increasing. Although the output cannot be driven past 100%, it takes
time for the component value to return to the appropriate range. During this time, if it is
necessary to lower the output, the artificially high component value can cause a delay. In
order to keep the control scheme components within the appropriate range, an approach
called Anti-reset windup limiting is used.
To ensure bumpless transfer (during the transition from one control mode to another) and to
avoid reset windup, tracking is needed.

3.3

What is the tracking process?


Tracking works by reverse calculation of the normal control functions. Control may be thought of
as proceeding from top to bottom, with inputs on the top, computations in the middle, and
outputs on the bottom. On the other hand, tracking may be thought of as proceeding from bottom
to top, with the output values on the bottom being used to calculate values for the computational
elements in the middle. Effectively, tracking calculates a value for an upstream control function,
so that the upstream objectives are satisfied.
One output point that is used for tracking is created for each algorithm that has an IN1 input. The
output is listed in the algorithm definitions as TOUT. TOUT contains the track output value, mode
and status output signals for the cascade IN1 variable.
Some algorithms have two to four additional tracking outputs for the Input 2, Input 3, and Input 4
as well. These are TRK2, TRK3, and TRK4.
The tracking output is input by the upstream algorithm as TRIN (Tracking Input Point) according
to the tracking rules outlined in the following sections. TRIN contains the tracking analog input
value and the tracking and limiting mode input signals.
Tracking values are generated by a reverse calculation of the normal algorithm function. That is,
when the algorithm is actively controlling the process, it uses one or more inputs to calculate an
output. When in the tracking mode, the algorithm is provided with the output value, and must
calculate the input value required to obtain that output. This value is sent to the upstream
algorithm which is generating the algorithms input. When there is more than one input, the value
is sent to the IN1 input.
Not all algorithms initiate tracking. All algorithms do not process the signals the same way. Refer
to the individual algorithm descriptions to determine how the signals are processed for a particular
algorithm.

REF_1100

11

3.4 What are the best practices for using tracking?

3.4

What are the best practices for using tracking?


Refer to the following guidelines when using tracking:

Tracking is typically done upstream.

Do not unnecessarily use the GAINBIAS algorithm.

Use MAMODE priority raise/lower instead of external transfers below MASTATION


algorithms.

Tracking signals are always visible (except for BALANCER signals) and are typically shown in
green.

If downstream tracking can come from more than one source, then the initial building order
determines the source unless manually changed. The exception to this is the BALANCER
algorithm, which can accept tracking from up to 16 downstream algorithms.

Tracking may be broken after the signal wires are drawn. On the Solaris platform, this may be
done by clearing the TRIN entry in the algorithms EDIT window. On the Windows platform,
this may be done with the Clear Tracking icon.

If non-tracking algorithms are inserted between tracking algorithms, then the designer is
responsible for tracking across the gaps. Typically, the TRANSFER algorithm is used above
the gap to insert the user-computed tracking.

Reset Windup limiting is performed by tracking algorithms if:


They are properly configured for tracking.
The scale limits (TPSC and BTSC) are set to reflect the accepted signal range.
In addition, the PID and PIDFF algorithms provide for enhanced windup limiting in the
cascade configuration.

Cross sheet tracking is implemented by passing a tracking point upstream through the same
page connectors which pass control signals downstream. On the Solaris platform, this is done
by filling in the optional tracking point name in the cross page connectors EDIT window. On
the Windows platform, this is done by using the Set Tracking icon with the signal wires.

Tracking points are fully managed by OCB except when tracking crosses between sheets,
and when tracking from a downstream algorithm into a BALANCER algorithm.
Since the BALANCER algorithm tracks from many downstream algorithms, tracking
connections between a BALANCER algorithm and any downstream algorithms are not
graphically visible.

Typically, there is only one tracking input (IN1) to an algorithm, except for TRANSFER and
SELECTOR algorithms.

Before you implement tracking, consider the following:

12

What are scaling factors, voltage, percentage, temperature?

Where is the I/O located?

What is the frequency of the point?

The Track Ramp Rate (TRAT) referred to in the algorithm descriptions is used by the
algorithm when tracking action is terminated and normal control begins. It is the time in units
per second for the output to decay or ramp to the value dictated by the inputs under normal
(non-tracking) operation. The default Track Ramp Rate value is 2.5 units

REF_1100

3.5 What algorithms support tracking?

3.5

What algorithms support tracking?


Only these algorithms support tracking through dual-purpose analog inputs and outputs (that is,
track value in AV field, mode status bits in 3W field) (See Ovation Algorithms Reference Manual
and Ovation Record Types Reference Manual.):
Tracking algorithm summary
ALGORITHM

T R AT
R AM P

ANALOG
DEVICE
BALANCER

TOUT

TRK1

TRK2

TRK3

TRK4

TO

TO

TO

TO

TO

IN1

IN1

IN2

IN3

IN4

ACCEPT
TRIN

TRK01-

C ASC ADE
TRACK
OPTIMIZE

TRK16
DIVIDE

FIELD

FFAI

FFAO

FFDI

FFDO

FFMAI

FFPID

FUNCTION

GAINBIAS

GASFLOW
HISELECT

LEADLAG

LOSELECT

MASTATION

MULTIPLY

PID

PIDFF

QSRMA

RATELIMIT

SETPOINT

SETSTATES

x
x

SQUAREROOT

SUM

REF_1100

13

3.5 What algorithms support tracking?

ALGORITHM

T R AT
R AM P

TRK1

TRK2

TRK3

TRK4

TO

TO

TO

TO

TO

IN1

IN1

IN2

IN3

IN4

TRANSFER

XMA2

ACCEPT
TRIN

X3STEP

2
3
4

C ASC ADE
TRACK
OPTIMIZE

XML2

14

TOUT

Through S (setpoint) pin


Information Only
Supports switchable slewing and switchable tracking
Ramps supported on both TRR1 and TRR2 pins

REF_1100

3.6 Tracking examples

3.6

Tracking examples
Tracking: Mode Transition
One of the most common uses of tracking is during the transition between manual mode and auto
mode. In this case, the control algorithm upstream of the MASTATION algorithm must be tracked
to the current output of the MASTATION algorithm. The input to the MASTATION station is the
same as the output from the MASTATION station at the moment of the mode change, and
bumping is prevented.
Tracking: SUM Algorithm
Another common use of tracking is for one input into a SUM algorithm. A two-input SUM algorithm
normally adds two inputs, A and B, to produce an output, C. That is, A + B = C. When the
algorithm is in tracking mode, C is dictated by downstream tracking requirements and one of the
inputs which may be continually varying as process conditions change. Therefore, a value for the
other input must be calculated by the algorithm such that the sum of the inputs is equal to the
required output. Simple algebraic manipulation of the SUM equation reveals that the dependent
input must be tracked to the difference between required C and independent B. That is, A = C - B.
Tracking: PID Algorithm
Still another common tracking use involves one of the inputs to a PID algorithms error calculation.
As in the SUM example, the output of the PID is dictated by downstream tracking requirements
and the process variable acts as an independent variable. However, because integral action is
involved in this control algorithm, the concept for tracking changes. Here, the appropriate
technique is to cause a zero error to be presented to the PID during tracking periods to provide no
error-related movement of the PID output when tracking is initially released.
Therefore, the dependent input to the PID error function, the set point, should be tracked to the
value of the process variable input so that a zero-error condition is produced. Also, the PID output
must be tracked when the associated portion of the system is not in control so that integral action
does not cause process upsets by following set point errors. As described previously, this
condition is called reset windup.
Typically, an MASTATION algorithm is placed below the PID algorithm on a control sheet.
In summary, in a plant, there might be a change in a process value (for example, the temperature
rose in a feedwater system). The applicable process control sheet contains the logic that defines
the desired value for the process. The algorithm PID looks at the difference between the actual
process value and the desired process value and reacts based on this difference. It performs the
necessary action (for example, add cold water to lower the water temperature) to bring the
process back to the desired value.
Tracking: Reset Windup
The concept of reset windup applies to normal control modes as well as to tracking modes. It is
undesirable to allow the integral action in a control algorithm to move any further in a direction
which tends to drive a control element past its limits of travel. Once the integrator winds past
where it should be, it takes time to wind back to the control region when the time comes. Control
delays result and process upsets may occur. The solution is to compute an integrator output
which keeps the downstream demand to the control element at the limit until it becomes time to
drive the control element into the control range. This approach is called anti-reset windup limiting.

REF_1100

15

3.7 Setting tracking signals for algorithms

Tracking: Anti-Reset Windup


The Ovation tracking functions performs the anti-reset windup limiting function if the following two
conditions are met:

The sheets must be configured using the Ovation sheet tracking rules.

The Scale Top and Scale Bottom parameters of the algorithms must be set to reflect the
actual control element ranges, usable controller ranges, and so forth.

The fact that an algorithm is at its top or bottom of scale is used to produce signals which inhibit
the upstream algorithm from moving too far in the wrong direction. If algorithms are properly
configured, reset windup is prevented. Reset windup is technically more of a concern in control
mode than in tracking mode.

3.7

Setting tracking signals for algorithms


The digital tracking signals are set and used as described in the following table.
SIGNAL

Track

ACTION OF THE ALGORITHM INITI ATING


THE TRACKING

IMPLEMENTATION BY THE
ALGORITHM BEING TOLD
TRACK

PID and PIDFF set the Track output signal


TRUE.

The output value is set equal to the


Track input value. An internal track
buffer is set up to provide a bumpless
transfer when the Track input signal is
removed.

TRANSFER sets the Track output signal


TRUE for the value that is not selected.

TO

MASTATION set the Track output signal


TRUE for one loop after it reads the
hardware value on the first pass.
MASTATION sets the Track output signal
TRUE when the algorithm is not in Auto
mode.
All algorithms set the Track output signal
TRUE when the Track input signal is
TRUE.
Track-if-Lower

HISELECT sets the Track-if-Lower output


signal TRUE for the value that is not
selected only when there are no Track,
Track-if_Higher, or Track-if-Lower input
signals and the gain on the input value is
positive.
LOSELECT sets the Track-if-Lower output
signal TRUE for the value that is not
selected only when there are not Track,
Track-if-Higher, or Track-if-Lower input
signals and the gain on the input value is
negative.

16

If the output value of the PID or


PIDFF is less than the Track input
value, then a negative error causes
the Controller to take action from the
previous output value, and a positive
error causes the Controller to take
action from the Track input value.

REF_1100

3.7 Setting tracking signals for algorithms

SIGNAL

ACTION OF THE ALGORITHM INITI ATING


THE TRACKING

IMPLEMENTATION BY THE
ALGORITHM BEING TOLD
TRACK

TO

All algorithms set the Tack-if-Lower output


signal TRUE when there is no Track input
signal and either:
The Track-if-Lower signal is TRUE and
the gain on the input value is positive, or
The Track-if-Higher input signal is TRUE
and the gain on the input value is
negative.
Track-if-Higher

LOSELECT sets the Track-if-Higher output


signal TRUE for the value that is not
selected only when there are no Track,
Track-if-Higher, or Track-if-Lower input
signals and the gain on the input value is
positive.
HISELECT sets the Track-if-Higher output
signal TRUE for the value that is not
selected only when there are no Track,
Track-if-Higher, or Track-if-Lower input
signals and the gain on the input value is
negative.

If the output value of PID or PIDFF is


greater than the Track input value,
then a positive error causes the
Controller to take action from the
previous output value, and a negative
error causes the Controller to take
action from the Track input value.

All algorithms set the Track-if-Higher output


signal TRUE when there is no Track input
signal and :
The Track-if-Higher input signal is TRUE
and the gain on the input value is
positive, or
The Track-if-Lower input signal is TRUE
and the gain on the input value is
negative.
Lower Inhibit

REF_1100

PID and PIDFF set the Lower Inhibit output


signal TRUE when the algorithm is in
Cascade mode, no Track input signal
exists, and:
The Track-if-Lower input signal is TRUE
and either the gain on the setpoint is
positive with INDIRECT action on the
error or the gain on the setpoint is
negative with DIRECT action on the error,
or
The Track-if-Higher input signal is TRUE
and either the gain on the setpoint is
negative with INDIRECT action on the
error, or the gain on the setpoint is
positive with DIRECT action on the error.

The output is prevented from


decreasing its value, but it is
permitted to increase.

17

3.7 Setting tracking signals for algorithms

SIGNAL

ACTION OF THE ALGORITHM INITI ATING


THE TRACKING

IMPLEMENTATION BY THE
ALGORITHM BEING TOLD
TRACK

TO

All algorithms set the Lower Inhibit output


signal TRUE when there is no Track input
signal and:
The output value is at the low limit
specified and the gain on the output value
is positive, or
The output value is at the high limit
specified and the gain on the input value
is negative, or
The Lower Inhibit input signal is TRUE
and the gain on the input value is
positive, or
The Raise Inhibit input signal is TRUE
and the gain on the input value is
negative.
Raise Inhibit

PID and PIDFF set the Raise Inhibit output


signal TRUE when the algorithm is in
Cascade mode, no Track input signal
exists, and:
The Track-if-Higher input signal is TRUE
and either the gain on the setpoint is
positive with INDIRECT action on the
error, or the gain on the setpoint is
negative with DIRECT action on the error,
or
The Track-if-Lower input signal is TRUE
and either the gain on the setpoint is
negative with INDIRECT action on the
error, or the gain on the setpoint is
positive with DIRECT action on the error.l

The output is prevented from


increasing its value, but it is permitted
to decrease.

All algorithms set the Raise Inhibit output


signal TRUE when there is no Track input
signal, and:
The output value is at the high limit
specified and the gain on the input value
is positive, or
The output value is at the low limit
specified and the gain on the input value
is negative, or
The Raise Inhibit input signal is TRUE
and the gain on the input value is
positive, or
The Lower Inhibit input signal is TRUE
and the gain on the input value is
negative.

18

REF_1100

E C T I O N

Algorithm classifications

IN THIS SECTION
What are algorithm classification groups? ........................................................................ 20
Alarm Manipulation algorithms.......................................................................................... 21
Artificial I/O algorithms (signal generators) ....................................................................... 21
Boolean Logic algorithms.................................................................................................. 22
Boolean Logic Memory algorithms.................................................................................... 23
Custom Calculation algorithms ......................................................................................... 23
Device Control algorithms ................................................................................................. 24
Fieldbus algorithms ........................................................................................................... 25
Filtering algorithms ............................................................................................................ 26
Hardware Interface algorithms .......................................................................................... 27
Link Controller Module Interface algorithms ..................................................................... 28
Loop Interface Module algorithms..................................................................................... 29
Mathematical and Statistical algorithms............................................................................ 30
Modulating Control algorithms .......................................................................................... 31
Monitor Function algorithms.............................................................................................. 32
Operator Interface algorithms ........................................................................................... 33
Point Format Conversion algorithms................................................................................. 34
Pulse Accumulator Module Interface algorithms............................................................... 35
Q-Line Interface algorithms............................................................................................... 36
Redundant Signal Processing algorithms ......................................................................... 37
Sequential Logic algorithms .............................................................................................. 38
Signal Compensation algorithms ...................................................................................... 39
System Diagnostic algorithms........................................................................................... 40
System Time Function algorithms..................................................................................... 40
Time/Counter Function algorithms .................................................................................... 41
Tracking algorithms ........................................................................................................... 42
Turbine Interface algorithms ............................................................................................. 43

REF_1100

19

4.1 What are algorithm classification groups?

4.1

What are algorithm classification groups?


Most algorithms can be classified according to their function. Many algorithms can be placed in
more than one category because they can have multiple applications.
All the Ovation algorithms are listed in the following sections. This includes the standard
algorithms as well as the Foundation Fieldbus and Q-Line algorithms. Reference pages (see page
48) are provided for each algorithm.

20

Alarm manipulation algorithms (see page 21)

Artificial I/O algorithms (Signal Generators) (see page 21)

Boolean logic algorithms (see page 22)

Boolean logic memory algorithms (see page 23)

Custom calculation algorithms (see page 23)

Device control algorithms (see page 24)

Fieldbus algorithms (see page 25)

Filtering algorithms (see page 26)

Hardware interface algorithms (see page 27)

Link Controller module interface algorithms (see page 28)

Loop interface module algorithms (see page 29)

Mathematical and statistical algorithms (see page 30)

Modulating control algorithms (see page 31)

Monitor function algorithms (see page 32)

Operator interface algorithms (see page 33)

Point format conversion algorithms (see page 34)

Pulse accumulator module interface algorithms (see page 35)

Q-Line algorithms (see page 36)

Redundant signal processing algorithms (see page 37)

Sequential logic algorithms (see page 38)

Signal compensation algorithms (see page 39)

System diagnostic algorithms (see page 40)

System time function algorithms (see page 40)

Time/counter function algorithms (see page 41)

Tracking algorithms (see page 42)

Turbine interface algorithms (see page 43)

REF_1100

4.2 Alarm Manipulation algorithms

4.2

Alarm Manipulation algorithms


Description
Alarm manipulation algorithms provide a means of interfacing alarm information into the control
scheme.
Common uses
Alarm manipulation algorithms have the following uses:

Drive alarm panels.

Determine alarm states to trigger control functions.

Commonly used algorithms of this type

4.3

ALARMLIMIT (see page 53) -- allows logic to be driven using alarm limits and values
produced by analog points.

ALARMMON (see page 58) -- monitors up to 16 analog or digital points for alarm states.

ANNUNCIATOR (see page 69) -- calculates alarm state.

SOFTSOE (see page 456) - allows a Sequence of Events (SOE) to be generated by software
in control sheets.

Artificial I/O algorithms (signal generators)


Description
Artificial I/O algorithms generate a value and serve as place holders to input values into the
system.
Common uses
Artificial I/O algorithms have the following uses:

Provide an interface for operator value entry.

Input fixed constants into the control scheme.

Change the point name of a signal.

Commonly used algorithms of this type

ASSIGN (see page 77) -- transfers the value and quality of one process point to another
process point of the same type.

AVALGEN (see page 80) -- analog value generator.

DVALGEN (see page 206) -- digital value generator.

REF_1100

21

4.4 Boolean Logic algorithms

4.4

Boolean Logic algorithms


Description
Boolean logic algorithms represent logical gates for binary logic (1 or 0).
AND - all inputs must be true to get true output. Implement as normally open contacts in a series.
OR - One or more inputs must be true to get true output. Implement as normally open contacts in
parallel.
NOT - inverts the input. Implement with normally closed contacts.
XOR - inputs must be different from each other to get true output. For example, out = (A AND
(NOT B)) OR ((NOT A) AND B).
Common uses
Boolean logic algorithms have the following use:

Implement functions in binary logic.

Commonly used algorithms of this type

22

AND (see page 67) -- logical AND gate up to eight inputs.

NOT (see page 312) -- logical NOT gate.

OR (see page 319) -- logical OR gate up to eight inputs.

TRUTHTBL (see page 524) - condenses discrete logic elements (for example, AND, OR,
NOT, XOR, NAND, or NOR) into one algorithm call.

XOR (see page 533) -- exclusive OR of two inputs.

REF_1100

4.5 Boolean Logic Memory algorithms

4.5

Boolean Logic Memory algorithms


Description
Boolean logic memory algorithms remember the state of the input change.
Common uses
Boolean logic memory algorithms have the following uses:

Implement on/off switches to initiate start/stop functions.

Latch binary outputs.

Implement toggle switches.

Commonly used algorithms of this type

4.6

AAFLIPFLOP (including alternate implementations) (see page 50) -- alternate action flip-flop
with reset.

FLIPFLOP (see page 225) -- S-R type flip--flop memory with set or reset override.

Custom Calculation algorithms


Description
Custom calculation algorithms support complex mathematical equations within a single algorithm.
These algorithms can be used to simplify mathematical processes instead of using separate
mathematical function algorithms.
Common uses
Custom calculation algorithms have the following uses:

Enter mathematical functions and utilize the result in the control scheme.

Convert gray codes to actual rod positions.

Commonly used algorithms of this type

CALCBLOCK (see page 106) -- allows you to define a mathematical calculation using a list of
operators.

CALCBLOCKD (see page 114) -- operates like CALCBLOCK, but is used for logical functions
only (digital version).

DRPI1A -- digital rod position indicator.

REF_1100

23

4.7 Device Control algorithms

4.7

Device Control algorithms


Description
Device control algorithms are predefined control schemes used to quickly implement start/stop,
open/close logic.
Common uses
Device control algorithms have the following uses:

Start/stop motors.

Open/close valves, dampers, etc.

Calculate running time.

Commonly used algorithms of this type

ANALOG DEVICE (ADEVICE) (see page 60) - interfaces to Motor Control Centers (MCCs).

DEVICE (see page 126) - combines the commands to open/close/stop or start/stop a piece of
equipment with feedback signals indicating the command was accomplished.

DEVICEX (see page 150) - combines the commands to open/close or start/stop a piece of
equipment with feedback signals indicating the command was accomplished.

DIGITAL DEVICE (see page 178) - provides logic to control the following seven types of
devices:
MOTOR (see page 184) - simple controlled motor.
MOTOR NC (see page 182) -- non-controlled motor.
MOTOR 2-SPD (see page 187) - two-speed or bi-directional controlled motor.
MOTOR 4-SPD (see page 191) - two-speed and bi-directional controlled motor.
SAMPLER (see page 179) - controlled sampler (calculates running time).
VALVE (see page 196) - controlled valve.
VALVE NC (see page 181) - non-controlled valve.

24

REF_1100

4.8 Fieldbus algorithms

4.8

Fieldbus algorithms
Description
Fieldbus algorithms interface to Fieldbus function blocks. Function blocks are self-contained
software modules that reside in Fieldbus devices. Therefore, Fieldbus devices can be controlled
by Ovation Fieldbus algorithms and integrated as part of an Ovation control scheme.
Common uses
Fieldbus algorithms have the following use:

Implement Foundation Fieldbus logic at the transmitter level.

Commonly used algorithms of this type

FFAI (see page 615) - Foundation Fieldbus analog input.

FFAO (see page 618) - Foundation Fieldbus analog output.

FFDI (see page 621) - Foundation Fieldbus digital input.

FFDO (see page 624) - Foundation Fieldbus digital output.

FFMAI (see page 635) - Foundation Fieldbus multiple analog input.

FFMAO (see page 638) - Foundation Fieldbus multiple analog output.

FFMDI (see page 640) - Foundation Fieldbus multiple digital input.

FFMDO (see page 644) - Foundation Fieldbus multiple digital output.

FFPID (see page 648) - Foundation Fieldbus PID.

FFISEL (see page 627) - Foundation Fieldbus input selector.

REF_1100

25

4.9 Filtering algorithms

4.9

Filtering algorithms
Description
Filtering algorithms stabilize I/O readings. In most cases, they are used to filter out noise or
compensate for a true delay.
Common uses
Filtering algorithms have the following uses:

Smooth noisy signals.

Compute averages.

Compensate for transport delays.

Implement derivative functions in the control scheme.

Commonly used algorithms of this type

26

LEADLAG (see page 263) -- lead/lag compensator.

QAVERAGE (see page 385) - average N analog points; exclude points with Bad quality; N <
9.

RATELIMIT (see page 391) - rate limiter with fixed rate limit and flag when rate limit is
exceeded.

RUNAVERAGE (see page 412) - running average transform.

SMOOTH (see page 454) - smoothed value transform.

TRANSPORT (see page 521) - transport time delay.

REF_1100

4.10 Hardware Interface algorithms

4.10 Hardware Interface algorithms


Description
Hardware interface algorithms read and/or write data to/from I/O modules or field devices.
Common uses
Hardware interface algorithms have the following uses:

Interface to a specific type of hardware.

Allow monitoring and diagnosing of output signal status.

Perform digital positioning of control devices.

Commonly used algorithms of this type

ANALOG DEVICE (ADEVICE) (see page 60) - interfaces to local analog loop Controllers.

ATREND (see page 78) - trend an analog or digital point.

FIELD (see page 215) - write value to a hardware output point.

DFIELD (see page 170) - used only with hardware digital output variable points.

RPACNT (see page 402) - count pulses from the Pulse Accumulator card.

RPAWIDTH (see page 403) - pulse width from the Pulse Accumulator card.

RSRSTATUS (see page 404) - interface to the RSR card.

RVPSTATUS (see page 418) - reads the Value Positioner card status and information.

X3STEP (see page 534) - acts as a positioner control for field devices.

Also see Link Controller module interface algorithms (see page 28).

REF_1100

27

4.11 Link Controller Module Interface algorithms

4.11 Link Controller Module Interface algorithms


Description
Link Controller module interface algorithms manipulate inputs, outputs, and statuses to the
Ovation Link Controller module providing serial communications via standard protocols to external
devices (such as Modbus, Allen-Bradley, etc.).
Common uses
Link Controller algorithms have the following uses:

Read/write registers to/from QLC or LC cards.

Provide status for link diagnostics.

Commonly used algorithms of this type

28

SLCAIN (see page 429) - reads analog input(s) from QLC/LC.

SLCAOUT (see page 432) - writes analog output(s) to QLC/LC.

SLCDIN (see page 435) - reads digital input(s) from QLC/LC.

SLCDOUT (see page 439) - writes digital output(s) to QLC/LC.

SLCPIN (see page 443) - reads packed digital input(s) from QLC/LC.

SLCPOUT (see page 446) - writes packed digital ouput(s) to QLC/LC

SLCSTATUS (see page 450) - status value of QLC/LC.

REF_1100

4.12 Loop Interface Module algorithms

4.12 Loop Interface Module algorithms


Description
Loop interface module algorithms enable the interface to the local loop controllers or electric
drives. For more information, see Ovation I/O Reference Manual.
Common uses
Loop interface module algorithms have the following uses:

Interface to electric drives.

Interface to remote auto/manual stations.

Commonly used algorithms of this type

MASTATION (see page 280) - interfaces between a soft manual/auto station and the
functional processor.

RLICONFIG (see page 399) - configures the loop interface card.

SETPOINT (see page 424) - soft and/or hard manual loader station with an interface to the
RLI card setpoint.

XMA2 (see page 587) - interface between a soft manual/auto station and a QAM, QAA, or
QLI card and the functional processor.

XML2 (see page 598) - soft and/or hard manual loader station with an interface to the QAM or
QLI card setpoint.

REF_1100

29

4.13 Mathematical and Statistical algorithms

4.13 Mathematical and Statistical algorithms


Description
Mathematical and statistical algorithms perform calculations using standard math formulas and
properties.
Common uses
Mathematical and statistical algorithms have the following uses:

Implement trigonometric functions.

Perform custom calculations by entering a mathematical formula.

Perform basic math functions like adding, multiplying, dividing, and so forth.

Perform linear curve interpolation between segments.

Calculate statistical values like average, mean, and standard deviation.

Commonly used algorithms of this type

30

ABSVALUE (see page 52) - absolute value of an input.

ANTILOG (see page 72) - antilog of scaled input, base 10 or natural base.

ARCCOSINE (see page 74) - arccosine on an input (in radians).

ARCSINE (see page 75) - arcsine of an input (in radians).

ARCTANGENT (see page 76) - arctangent of an input (in radians).

CALCBLOCK (see page 106) - defines a mathematical calculation using a list of operators.

CALCBLOCKD (see page 114) - defines a mathematical calcuation using a list of operators
(performs logical functions only).

COSINE (see page 121) - cosine of an input (in radians).

DIVIDE (see page 199) - divides two gained and biased inputs.

FUNCTION (see page 227) - twelve breakpoint function generator.

GAINBIAS (see page 231) - limits a gained and biased input.

INTERP (see page 254) - provides a linear table lookup and interpolation function.

LOG (see page 271) - base 10 logarithm and bias.

MULTIPLY (see page 308) - multiplies two gained and biased inputs.

NLOG (see page 311) - natural logarithm with bias.

POLYNOMIAL (see page 352) - fifth order polynomial equation.

SINE (see page 428) - sine of an input (in radians).

SQUAREROOT (see page 467) - square root of a gained and biased input.

STATISTICS (see page 471) - calculates variance and standard deviation of input samples,
based on values from TW (time window).

SUM (see page 500) - adds four gained and biased inputs.

TANGENT (see page 506) - tangent of an input (in radians).

REF_1100

4.14 Modulating Control algorithms

4.14 Modulating Control algorithms


Description
Modulating control algorithms implement modulating control strategies, such as level control,
feedwater control, flow/temperature controls, and so forth.
Common uses
Modulating control algorithms have the following uses:

Implement modulating control scheme with balancing functions, selection functions, override
functions, proportional, integral and derivative functions, and operator interface functions.

Commonly used algorithms of this type

BALANCER (see page 81) - controls up to 16 downstream algorithms.

FUNCTION (see page 227) - twelve breakpoint function generator.

HISELECT (see page 245) - selects the greater of two gained and biased inputs.

LOSELECT (see page 272) - selects the smaller of four gained and biased inputs.

MAMODE (see page 278) - logic interface to MASTATION.

MASTATION (see page 280) - interface between a soft manual/auto station and the functional
processor.

PID (see page 322) - proportional plus integral plus derivative controller

PIDFF (see page 337) - proportional plus integral plus derivative controller with feed forward.

PREDICTOR (see page 354) - compensate for pure time-delay.

SETPOINT (see page 424) - soft and/or hard manual loader station.

TRANSFER (see page 513) - selects a gained and biased input based on a flag.

See also Tracking algorithms (see page 42).

REF_1100

31

4.15 Monitor Function algorithms

4.15 Monitor Function algorithms


Description
Monitor function algorithms monitor point status with certain criteria such as limits, quality, and
transitions. These algorithms create discrete logic that can be used for program flow control.
Common uses
Monitor function algorithms have the following uses:

Generate flags based on process conditions.

Trigger control actions.

Monitor signal status.

Commonly used algorithms of this type

32

COMPARE (see page 120) - floating point compare.

DBEQUALS (see page 124) - deviation monitor between two variable inputs.

DIGCOUNT (see page 171) - digital counter with flag.

HIGHLOWMON (see page 243) - high and low signal monitor with reset deadband and
fixed/variable limit.

HIGHMON (see page 244) - high signal monitor with reset deadband and a fixed/variable
limit.

LOWMON (see page 277) - low signal monitor with reset deadband and a fixed/variable limit.

PULSECNT (see page 384) - pulse count.

QUALITYMON (see page 387) - quality check one input.

RATECHANGE (see page 389) - rate of change transform.

RATELIMIT (see page 391) - rate limiter with fixed rate limit and flag when rate limit is
exceeded.

RATEMON (see page 394) - rate of change monitor with reset deadband and fixed/variable
rate limit.

SOFTSOE (see page 456) - allows a Sequence of Events (SOE) to be generated by software
in control sheets.

REF_1100

4.16 Operator Interface algorithms

4.16 Operator Interface algorithms


Description
Operator interface algorithms are control function algorithms that provide a means for the
operator to interact with the control system.
Common uses
Operator interface algorithms have the following uses:

Provide a mechanism to actuate functions in the control scheme.

Generate control commands.

Dynamically move process set points.

Interface to external loop controllers and drives.

Auctioneer between multiple control signals.

Commonly used algorithms of this type

BUFFER (see page 92) -- gathers the value and status of a point and associates a timestamp
with this information.

FACEPLATE (see page 207) - generic algorithm used to collect all inputs necessary for a
graphic faceplate.

KEYBOARD (see page 258) - programmable/function key interface - P1 through P10 to


control key interface.

MASTATION (see page 280) - interface between a soft manual/auto station and the functional
processor.

MEDIANSEL (see page 300) - monitors analog transmitter inputs for quality and deviation
from each other.

SETPOINT (see page 424) - soft and/or hard manual loader station with an interface to the
RLI card setpoint.

XMA2 (see page 587) - interface between a soft manual/auto station and a QAM, QAA, or
QLI card and the functional processor.

XML2 (see page 598) - soft and/or hard manual loader station with an interface to the QAM or
QLI card setpoint.

2XSELECT (see page 540) - selects and monitors two transmitter signals.

Also see Device control algorithms (see page 24).

REF_1100

33

4.17 Point Format Conversion algorithms

4.17 Point Format Conversion algorithms


Description
Point format conversion algorithms provide the means to translate point values from one data
structure to another.
Common uses
Point format conversion algorithms have the following uses:

Change a point name.

Transfer to/from a binary-coded decimal (BCD).

Manipulate packed signals.

Commonly used algorithms of this type

34

BCDNIN (see page 86) - inputs n BCD digits to the functional processor from the DIOB.

BCDNOUT (see page 88) - outputs n BCD digits from the functional processor to the I/O bus.

PACK16 (see page 320) - packs up to 16 digital point values into a packed digital record.

SATOSP (see page 421) - transfers analog values to a packed digital record.

SPTOSA (see page 466) - transfers packed digital values to an analog record.

TRANSLATOR (see page 517) - translates the output based on the input of a predefined
table.

UNPACK16 (see page 529) - unpacks up to 16 digital point values from a packed digital
record.

REF_1100

4.18 Pulse Accumulator Module Interface algorithms

4.18 Pulse Accumulator Module Interface algorithms


Description
Pulse accumulator module interface algorithms read and reset accumulator pulses in the Ovation
Pulse Accumulator card.
Common uses
Pulse accumulator module interface algorithms have the following uses:

Read the status for the pulse accumulator module.

Write commands to the pulse accumulator module.

Commonly used algorithms of this type

QPACMD (see page 558) - writes a command byte to a QPA card.

QPACMPAR (see page 564) - writes a comparator value to a QPA card.

QPASTAT (see page 566) - outputs the digital status from a QPA card.

RPACNT (see page 402) - counts pulses from the Pulse Accumulator (PA) card.

RPAWIDTH (see page 403) - pulse width from the Pulse Accumulator (PA) card.

REF_1100

35

4.19 Q-Line Interface algorithms

4.19 Q-Line Interface algorithms


Description
Q-Line interface algorithms are used specifically with Q-Line I/O hardware in an Ovation system.
These algorithms are the only Q-Line algorithms supported in Ovation.
Common uses
Q-line algorithms have the following use:

Used in Ovation for compatibility with Q-Line I/O.

Commonly used algorithms of this type

36

PVSPSLI (see page 548) - writes the functional processor-defined process variable (PVAR)
and/or set point (STPT) values to the Q-Line Loop Interface (QLI) for display at the Loop
Interface Module (LIM).

PWDIN (see page 551) - converts a digital pulse to an analog value proportional to the width
of the pulse.

QLIPASS (see page 554) - changes the default station (or loop) number and password
number for up to 12 QLI cards

QPACMD (see page 558) - writes a command byte to a QPA card.

QPACMPAR (see page 564) - writes a comparator value to a QPA card.

QPASTAT (see page 566) - outputs the digital status from a QPA card.

QSDDEMAND (see page 567) - writes demand and mode to a QSD card.

QSDMODE (see page 569) - indicates QSD mode.

QSRMA (see page 570) - interface manual/auto station to a QSR card.

QVP (see page 577) - interface to a QVP card.

XFLOW (see page 580) - calculates a pressure-and-temperature-compensated mass or


volumetric flow for ideal gases.

XPIDSLI (see page 602) - PID controller with supervisory set point and QLI or QLJ card
interface

XMA2 (see page 587) - interface between a soft manual/auto station and a QAM, QAA, or
QLI card and the functional processor.

XML2 (see page 598) - soft and/or hard manual loader station with an interface to the QAM or
QLI card setpoint.

REF_1100

4.20 Redundant Signal Processing algorithms

4.20 Redundant Signal Processing algorithms


Description
Redundant signal process algorithms select which signal or which statistic (median, average,
maximum, minimum, and so forth) to use for control in a redundant configuration.
Common uses
Redundant signal processing algorithms have the following uses:

Auctioneer between multiple control signals.

Allow manual or automatic selection of the signal to be used for control purposes.

Commonly used algorithms of this type

MEDIANSEL (see page 300) - monitors analog transmitter inputs for quality and deviation
from each other.

SELECTOR (see page 422) - transfer between n analog inputs, where n < 8.

TRANSFER (see page 513) - selects a gained and biased input based on a flag.

2XSELECT (see page 540) - selects and monitors two transmitter signals.

REF_1100

37

4.21 Sequential Logic algorithms

4.21 Sequential Logic algorithms


Description
Sequential logic algorithms help you control processes that are sequential in nature and follow a
predetermined set of steps.
Common uses
Sequential logic algorithms have the following uses:

Implement sequential logic.

Selection of a specified output based on different input steps.

Implement the step control functions.

Commonly used algorithms of this type

38

ANALOGDRUM (see page 63) - drum controller with two analog outputs or with one analog
output.

DEVICESEQ (see page 146) - sequencer using MASTER/DEVICE arrangement.

DIGDRUM (see page 173) - drum controller with 16 digital outputs.

FIFO (see page 217) - transaction queue; first in - first out.

FIRSTOUT (see page 220) - monitors up to 16 digital inputs and provides an indication of the
first digital input to transition from zero to one.

MASTERSEQ (see page 289) - sequencer using MASTER/DEVICE arrangement.

PRIORITY (see page 359) - consolidates complex logic to perform priority-based sequencing
when turning devices ON and OFF.

PRIORITY-EXT (see page 375) - dynamically calculates external priorities and is designed for
use with the Priority algorithm.

PRIORITY-REJ (see page 379) - provides a method to manage load rejection up to a


predefined number of devices and is designed for use with the Priority algorithm.

STEPTIME (see page 495) - automatic step timer.

TRANSLATOR (see page 517) - translator.

TRNSFNDX (see page 523) - selects output analog value from up to 64 outputs which hold
the input.

REF_1100

4.22 Signal Compensation algorithms

4.22 Signal Compensation algorithms


Description
Signal compensation algorithms adjust the input signal based on density, volume, enthalpy, and
so forth in order to provide a true indication of the process value.
Common uses
Signal compensation algorithms have the following uses:

Condition input signals to provide a true reading of the variable.

Provide easy access to the steam tables to use for thermal dynamic conversions.

Determine level and flow compensations based on density.

Commonly used algorithms of this type

BILLFLOW (see page 90) - calculates gas flow.

GASFLOW (see page 235) - calculates a pressure and temperature compensated mass or
volumetric flow.

LEVELCOMP (see page 267) - calculates the density compensated water level in a
pressurized steam drum.

STEAMFLOW (see page 490) - flow compensation.

STEAMTABLE (see page 492) - calculates thermodynamic properties of water and steam.
HSCLTP (see page 250) - calculates Enthalpy (H) and Entropy (S) of Compressed Liquid
given its Temperature and Pressure.
HSLT (see page 251)- calculates Enthalpy (H) of Saturated Liquid given its Temperature.
HSTVSVP (see page 252) - calculates Enthalpy (H), Entropy (S), Temperature, and
Specific Volume of Saturated Vapor given its Pressure.
HSVSSTP (see page 253) - calculates Enthalpy (H), Entropy (S), and Specific Volume of
Superheated Steam given its Temperature and Pressure.
PSLT (see page 382) - calculates Pressure of Saturated Liquid given its Temperature.
PSVS (see page 383) - calculates Pressure of Saturated Vapor given its Entropy (S).
SSLT (see page 470) - calculates Entropy (S) of Saturated Liquid given its Temperature.
TSLH (see page 527) - calculates Temperature for Saturated Liquid given its Enthalpy
(H).
TSLP (see page 528) - calculates Saturation Temperature of Saturated Liquid given its
Pressure.
VCLTP (see page 531) - calculates Specific Volume of Compressed Liquid given its
Temperature and Pressure.
VSLT (see page 532) - calculates Specific Volume of Saturated Liquid given its
Temperature.

REF_1100

39

4.23 System Diagnostic algorithms

4.23 System Diagnostic algorithms


Description
System diagnostic algorithms directly interface and set system statuses in order to assist in
troubleshooting and monitoring Ovation points.
Common uses
System diagnostic algorithms have the following use:

Provide a mechanism to monitor system status and initiate actions in the control system.

Commonly used algorithms of this type

DROPSTATUS (see page 202) - drop status record monitor.

HEARTBEAT (see page 240) - generates heartbeat signals that can be received by other
drops.

LATCHQUAL (see page 261) - latches and unlatches the quality of an input analog or digital
point.

PNTSTATUS (see page 350) - point status.

4.24 System Time Function algorithms


Description
System time function algorithms read the UTC system clock and allow you to perform functions
based on time.
Common uses
System time function algorithms have the following use:

Provide access to the system clock to implement time-related functions.

Commonly used algorithms of this type

40

SYSTEMTIME (see page 504) - stores system date and time in analog points.

TIMECHANGE (see page 507) - time change.

TIMEDETECT (see page 508) - time detector.

TIMEMON (see page 510) - pulse digital points based on the system time.

REF_1100

4.25 Time/Counter Function algorithms

4.25 Time/Counter Function algorithms


Description
Timer/Counter function algorithms execute actions based on user-specified time input. These
algorithms manipulate an output based on time.
Common uses
Time/counter function algorithms have the following uses:

Implement timing functions in the control scheme (such as delays and pulses).

Monitor loop count to determine functions such as equipment running time.

Commonly used algorithms of this type

COUNTER (see page 122) - interface up/down counter.

OFFDELAY (see page 313) - pulse stretcher.

ONDELAY (see page 315) - pulse timer.

ONESHOT (see page 317) - digital one-shot pulse.

RESETSUM (see page 396) - accumulates until told to reset.

RUNTIME (see page 414) -- counts long lasting service times of devices.

TIMEMON (see page 510) - pulse digital points based on the system time.

REF_1100

41

4.26 Tracking algorithms

4.26 Tracking algorithms


Description
The tracking algorithms support tracking. Tracking may be defined as aligning a portion of a
control system which is not in control to the portion of the control system which is in control.
Tracking is used to prevent bumps and to reduce process upsets. Tracking algorithms support
tracking through dual-purpose inputs and outputs (that is, the track value in the AV field).
Common uses
Tracking algorithms have the following uses:

Keep the system aligned while manual changes are performed in order to prevent bumps.

Balance several large pieces of equipment in a plant.

Maintain major plant loops inside their designed range of operation.

Commonly used algorithms of this type

42

ANALOG DEVICE (ADEVICE) (see page 60) - interfaces to local analog loop controllers.

BALANCER (see page 81) - controls up to 16 downstream algorithms.

DIVIDE (see page 199) - divides two gained and biased inputs.

FFAI (see page 615) - Foundation Fieldbus analog input.

FFAO (see page 618) - Foundation Fieldbus analog output.

FFDI (see page 621) - Foundation Fieldbus digital input.

FFDO (see page 624) - Foundation Fieldbus digital output.

FFMAI (see page 635) - Foundation Fieldbus multiple analog input.

FFPID (see page 648) - Foundation Fieldbus PID.

FIELD (see page 215) - writes value to I/O point.

FUNCTION (see page 227) - two-segment function generator.

GAINBIAS (see page 231) - limits a gained and biased input.

GASFLOW (see page 235) - calculates a pressure and temperature compensated mass or
volumetric flow.

HISELECT (see page 245) - selects the greater of two gained and biased inputs.

LEADLAG (see page 263) - lead/lag compensator.

LOSELECT (see page 272) - selects the smaller of four gained and biased inputs.

MASTATION (see page 280) - interface between a soft manual/auto station and the functional
processor.

MULTIPLY (see page 308) - multiplies two gained and biased inputs.

PID (see page 322) - proportional plus integral plus derivative controller.

PIDFF (see page 337) - proportional plus integral plus derivative controller with feed forward.

QSRMA (see page 570) - interface manual/auto station to a QSR card.

RATELIMIT (see page 391) - rate limiter with fixed rate limit and flag when rate limit is
exceeded.

SETPOINT (see page 424) - soft and/or hard manual loader station with an interface to the
RLI card setpoint.

REF_1100

4.27 Turbine Interface algorithms

SETSTATES (see page 823) - sets tracking bits in the Ovation tracking point based on the
inputs that are connected.

SQUAREROOT (see page 467) - square root of a gained and biased input.

SUM (see page 500) - adds four gained and biased inputs.

TRANSFER (see page 513) - selects a gained and biased input based on a flag.

XMA2 (see page 587) - interface between a soft manual/auto station and a QAM, QAA, or
QLI card and the functional processor.

XML2 (see page 598) - soft and/or hard manual loader station with an interface to the QAM or
QLI card setpoint.

X3STEP (see page 534) - controls devices which must be kept within a certain tolerance.

4.27 Turbine Interface algorithms


Description
Turbine interface algorithms allow communication to the Ovation I/O interfaces and to hydraulic
servos dedicated to position control of process control valves.
Common uses
Turbine interface algorithms have the following uses:

Read and write valve and status information to/from the Ovation RVP card.

Read and write valve and status information to/from the Ovation QVP card.

Read and write status information to/from the Ovation Servo Driver card.

Commonly used algorithms of this type

MASTATION (see page 280) - interfaces between a soft manual/auto station and the
functional processor. This has been used to interface to the RVP I/O module in early Ovation
releases.

QVP (see page 577) - interfaces to a QVP card.

QSRMA (see page 570) - interfaces to the QSR card.

RSRSTATUS (see page 404) - reads the RSR card status and information.

RVPSTATUS (see page 418) - reads the RVP card status and information.

XMA2 (see page 587) - interfaces between a soft manual/auto station and a QAM, QAA, QLI,
or QVP card and the functional processor.

REF_1100

43

E C T I O N

Standard algorithm reference pages

..

IN THIS SECTION
Using algorithm reference pages ...................................................................................... 48
AAFLIPFLOP..................................................................................................................... 50
ABSVALUE ....................................................................................................................... 52
ALARMLIMIT..................................................................................................................... 53
ALARMMON...................................................................................................................... 58
ANALOG DEVICE (ADEVICE).......................................................................................... 60
ANALOGDRUM................................................................................................................. 63
AND................................................................................................................................... 67
ANNUNCIATOR ................................................................................................................ 69
ANTILOG........................................................................................................................... 72
ARCCOSINE ..................................................................................................................... 74
ARCSINE .......................................................................................................................... 75
ARCTANGENT.................................................................................................................. 76
ASSIGN............................................................................................................................. 77
ATREND............................................................................................................................ 78
AVALGEN ......................................................................................................................... 80
BALANCER ....................................................................................................................... 81
BCDNIN............................................................................................................................. 86
BCDNOUT......................................................................................................................... 88
BILLFLOW......................................................................................................................... 90
BUFFER ............................................................................................................................ 92
CALCBLOCK................................................................................................................... 106
CALCBLOCKD ................................................................................................................ 114
COMPARE ......................................................................................................................120
COSINE........................................................................................................................... 121
COUNTER....................................................................................................................... 122
DBEQUALS.....................................................................................................................124
DEVICE ........................................................................................................................... 126
DEVICESEQ ...................................................................................................................146
DEVICEX......................................................................................................................... 150
DFIELD............................................................................................................................ 170
DIGCOUNT ..................................................................................................................... 171
DIGDRUM .......................................................................................................................173
DIGITAL DEVICE ............................................................................................................178
DIVIDE ............................................................................................................................ 199
DROPSTATUS................................................................................................................202
DRPI1A ........................................................................................................................... 204
DVALGEN .......................................................................................................................206
FACEPLATE ................................................................................................................... 207
FIELD .............................................................................................................................. 215
FIFO ................................................................................................................................ 217

REF_1100

45

4.27 Turbine Interface algorithms


FIRSTOUT ......................................................................................................................220
FLIPFLOP ....................................................................................................................... 225
FUNCTION......................................................................................................................227
GAINBIAS .......................................................................................................................231
GASFLOW ...................................................................................................................... 235
HEARTBEAT................................................................................................................... 240
HIGHLOWMON...............................................................................................................243
HIGHMON ....................................................................................................................... 244
HISELECT....................................................................................................................... 245
HSCLTP .......................................................................................................................... 250
HSLT ............................................................................................................................... 251
HSTVSVP........................................................................................................................252
HSVSSTP........................................................................................................................253
INTERP ........................................................................................................................... 254
KEYBOARD ....................................................................................................................258
LATCHQUAL...................................................................................................................261
LEADLAG........................................................................................................................263
LEVELCOMP .................................................................................................................. 267
LOG................................................................................................................................. 271
LOSELECT...................................................................................................................... 272
LOWMON........................................................................................................................ 277
MAMODE ........................................................................................................................278
MASTATION ...................................................................................................................280
MASTERSEQ..................................................................................................................289
MEDIANSEL....................................................................................................................300
MULTIPLY....................................................................................................................... 308
NLOG .............................................................................................................................. 311
NOT................................................................................................................................. 312
OFFDELAY ..................................................................................................................... 313
ONDELAY .......................................................................................................................315
ONESHOT.......................................................................................................................317
OR ................................................................................................................................... 319
PACK16........................................................................................................................... 320
PID .................................................................................................................................. 322
PIDFF .............................................................................................................................. 337
PNTSTATUS ................................................................................................................... 350
POLYNOMIAL .................................................................................................................352
PREDICTOR ...................................................................................................................354
PRIORITY Algorithm Package ........................................................................................ 358
PSLT ............................................................................................................................... 382
PSVS............................................................................................................................... 383
PULSECNT .....................................................................................................................384
QAVERAGE ....................................................................................................................385
QUALITYMON................................................................................................................. 387
RATECHANGE ............................................................................................................... 389
RATELIMIT......................................................................................................................391
RATEMON ...................................................................................................................... 394
RESETSUM .................................................................................................................... 396
RLICONFIG.....................................................................................................................399
RPACNT.......................................................................................................................... 402
RPAWIDTH .....................................................................................................................403
RSRSTATUS................................................................................................................... 404
RUNAVERAGE ............................................................................................................... 412
RUNTIME ........................................................................................................................414
RVPSTATUS...................................................................................................................418
SATOSP.......................................................................................................................... 421

46

REF_1100

4.27 Turbine Interface algorithms


SELECTOR .....................................................................................................................422
SETPOINT ......................................................................................................................424
SIMTIME ......................................................................................................................... 427
SINE ................................................................................................................................ 428
SLCAIN ........................................................................................................................... 429
SLCAOUT .......................................................................................................................432
SLCDIN ........................................................................................................................... 435
SLCDOUT .......................................................................................................................439
SLCPIN ........................................................................................................................... 443
SLCPOUT .......................................................................................................................446
SLCSTATUS ...................................................................................................................450
SMOOTH......................................................................................................................... 454
SOFTSOE .......................................................................................................................456
SPTOSA.......................................................................................................................... 466
SQUAREROOT...............................................................................................................467
SSLT ............................................................................................................................... 470
STATISTICS....................................................................................................................471
STEAMFLOW.................................................................................................................. 490
STEAMTABLE.................................................................................................................492
STEPTIME ......................................................................................................................495
SUM ................................................................................................................................ 500
SYSTEMTIME .................................................................................................................504
TANGENT .......................................................................................................................506
TIMECHANGE ................................................................................................................ 507
TIMEDETECT .................................................................................................................508
TIMEMON .......................................................................................................................510
TRANSFER ..................................................................................................................... 513
TRANSLATOR ................................................................................................................ 517
TRANSPORT ..................................................................................................................521
TRNSFINDX.................................................................................................................... 523
TRUTHTBL......................................................................................................................524
TSLH ............................................................................................................................... 527
TSLP ............................................................................................................................... 528
UNPACK16 ..................................................................................................................... 529
VCLTP............................................................................................................................. 531
VSLT ............................................................................................................................... 532
XOR................................................................................................................................. 533
X3STEP........................................................................................................................... 534
2XSELECT ......................................................................................................................540

REF_1100

47

5.1 Using algorithm reference pages

5.1

Using algorithm reference pages


Algorithm reference pages are provided for each algorithm in this manual. These pages are
alphabetized and provide the following information about each algorithm (where applicable):

Description - Describes the algorithm's operation.

Invalid Real Numbers and Quality - Describes how quality is set.

Functional Symbol - Illustrates (in pictorial form) the algorithm's operation. Refer to
Algorithm functional symbols (see page 49).

Algorithm Record Type (if required) - Defines the type and size of the record generated for
storing parameters and other information necessary to the algorithm. (See Ovation Record
Types Reference Manual.)

Algorithm Definitions - Provides the following information on the algorithm:


Names of the parameters used.
Algorithm record field used by each tuning constant or data initialization parameter; also,
the type of entry required in this field (integer, byte, or real).
Parameter types such as those described below:
Variable = Input or output signal to the algorithm (that is, analog or digital).
Tuning Constant = Fixed parameter that remains constant unless it is changed by the
user at the Operator's Station or Control Builder.
Data Initialization Parameter = Fixed constant that cannot be changed by the user at
the Operator's Station but can be changed by the Control Builder.
Selectable = can be either a Tuning constant in an algorithm record field or a point
record.
Reconcilable Constant = parameter can be tuned and reconciled through a special,
project-specific diagram.
Algorithm Initialization = internal parameter that is exposed by the algorithm.
Definition of whether the parameter is required or optional.
If the parameter is optional and not initialized by the user, it defaults to zero.
If there are input points to the algorithm that are optional and not initialized by the user,
they have a value of zero for analog points and FALSE for digital inputs.
Default value (if applicable).
Brief description of the parameter.
Minimum point record required by each variable.
Each algorithm defines the minimum size point record that can be used for each
algorithm input or output.
The quality (see page 4) of the points is set BAD when a detectable hardware failure is
encountered. This information can be used in control strategies or for alarming purposes
by detecting BAD quality using the QUALITYMON series of algorithms.

48

Function - Explains the algorithm's operation in terms of a mathematical equation.

Application Example - Provides an example to demonstrate the use of the algorithm.

Miscellaneous Sections - applicable to a specific algorithm only.

REF_1100

5.1 Using algorithm reference pages

5.1.1 Algorithm functional symbols


The following items are used in the algorithm functional symbols:

Required Analog (LA record type) input or output (solid line and solid arrowhead).

Required Digital or Packed Digital (LD or LP record type) input or output (solid line and hollow
arrowhead).

Required Algorithm (LC record type) input or output (solid line and line arrowhead).

Required Drop (DU) input or output (solid line and no arrowhead).

Optional or Selectable Analog (LA record type) input or output (dashed line and solid
arrowhead).

Optional or Selectable Digital or Packed Digital (LD, LP record type) input or output (dashed
line and hollow arrowhead).

Optional or Selectable Algorithm (LC record type) input or output (dashed line and line
arrowhead

Optional or Selectable Drop (DU record type) input or output (dashed line and no arrowhead)

Note: Symbols portrayed in this manual only serve as an example and can be configured
differently depending on the number and type of pins that are used. The Control Builder
application may show various symbol configurations of the same algorithm and may not directly
match what is shown in this document.

REF_1100

49

5.2 AAFLIPFLOP

5.2

AAFLIPFLOP
Description
The AAFLIPFLOP algorithm simulates a memory device whose output state is inverted by each
momentary TRUE signal on SRST (that is, the output state OUT is inverted when there is a
transition in the input SRST from a FALSE to a TRUE signal). OUT is set to FALSE anytime the
reset digital input signal RSET is TRUE.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

INIT

Variable

Optional

Initial Value

LD, LP

SRST

Variable

Required

Input (digital)

LD, LP

RSET

Variable

Required

Reset Input (digital)

LD, LP

OUT

Variable

Required

Output (digital)

LD, LP

Function
RSET

OLD SRST

SRST

OUT

where:
X = Value can be 0 or 1.
S = Output remains in the same or previous state.
T = Output toggles from the previous state.

50

REF_1100

5.2 AAFLIPFLOP
OLD SRST = Value of the SRST input on the previous loop executed by the functional
processor.
On the first pass, OUT is set to FALSE if RSET is TRUE. Otherwise, OUT is set as follows:
If the optional INIT input is initialized by the user, OUT is set to the value of INIT.
If INIT is not initialized or has BAD quality on the first pass, OUT remains in the same
state. OUT is set to FALSE on power up/reset unless it is initialized to TRUE by the user
in the program.

REF_1100

51

5.3 ABSVALUE

5.3

ABSVALUE
Description
The output for the ABSVALUE algorithm is the absolute value of input IN1.
The value of IN1 is checked for invalid real numbers. If IN1 is valid, the quality of IN1 is
propagated to the quality of OUT and the real number value of OUT is written to the point record.
Invalid Numbers and Quality
If the value of IN1 is invalid or if the calculated value of OUT written to the point record is invalid,
the quality and the reason are set to BAD.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function
OUT = ABS(IN1)

52

REF_1100

5.4 ALARMLIMIT

5.4

ALARMLIMIT
Description
The ALARMLIMIT algorithm allows logic to be driven using alarm limits and values produced by
analog points.
Functional Symbol

Alarm Limit Value (ALVAL)


The alarm limit value (ALVAL) parameter can be configured to output the current selected Limit
Type (LTYPE). This value is also stored in the Alarm Limit (ALIM) field. The ALIM field allows you
to reconcile the alarm limit to the control sheet for documentation purposes.
If the selected limit is not defined in the input point (as determined by the LB record field), the
algorithm will set ALVAL to 0 and BAD quality.
Note: Alarm Limits can be defined as values or points. In the case of a point, the algorithm will
use the value of the point during the executed control cycle.
Alarm Active (ACT)
The alarm active (ACT) output is set depending on the following three parameters: ATYPE,
LTYPE, and QUAL.
Alarm Type (ATYPE)
The chosen alarm type (ATYPE) determines how alarm limits and alarm cutouts should be
monitored.
AT Y P E

DESCRIPTION

LQ

Monitor Limit and Quality defined by LTYPE and QUAL.

LQC

Monitor Limit and Quality defined by LTYPE and QUAL. Cutout bit is also
monitored. If a point is cutout, the algorithm will not set ACT output.

ALMQC

Monitor Limit (including lower alarm limits) and Quality defined by QUAL. The
cutout bit is also monitored. If a point is cutout, the algorithm will not set the
ACT output.

REF_1100

53

5.4 ALARMLIMIT

Note: If you choose ALMQC, the algorithm monitors the selected limit in LTYPE, and any lower
defined limits. For instance, if you choose LOW2, the algorithm monitors LOW2, LOW3, and
LOW4. The user-defined high and low limits are exempt from this and will only be monitored if
specifically selected.
Limit Type (LTYPE)
The chosen limit type (LTYPE) determines what limit the algorithm will use to determine if the
input point is in alarm. Deadbands are taken into account as well, using the same definition as the
DB and DJ record fields. See Ovation Record Types Reference Manual for more information.
LTYPE

LIMIT FIELD

DESCRIPTION

HIGH_UD

UH

User-defined high limit.

HIGH1

HL

High limit 1.

HIGH2

ZH

High limit 2.

HIGH3

3Y

High limit 3.

HIGH4

4Y

High limit 4.

LOW_UD

UL

User-defined low limit.

LOW1

LL

Low limit 1.

LOW2

ZL

Low limit 2.

LOW3

3Z

Low limit 3.

LOW4

4Z

Low limit 4.

Configured Quality (QUAL)


The configured quality parameter (QUAL) determines how quality is used in the calculation of the
ACT output. The QUAL table in the template describes the QUAL parameter options. For
instance, if "Value and GOOD quality" are selected, the output will be set to true if the LTYPE is
satisfied and the point quality is GOOD. If "Value or BAD quality" is selected, the output will be set
to true if the LTYPE is satisfied or the quality is BAD.

54

Q U AL

DESCRIPTION

LTYPE

Alarm using LTYPE only; qualtiy ignored.

LTYPE or BAD

Alarm using LTYPE or BAD quality.

LTYPE or BAD, POOR

Alarm using LTYPE or BAD or POOR quality.

LTYPE or BAD, POOR, FAIR

Alarm using LTYPE or BAD or POOR, FAIR quality.

LTYPE and GOOD

Alarm using LTYPE and GOOD quality.

LTYPE and GOOD, FAIR

Alarm using LTYPE and GOOD or FAIR quality.

LTYPE and GOOD, FAIR, POOR

Alarm using LTYPE and GOOD, FAIR, or POOR quality.

REF_1100

5.4 ALARMLIMIT
Output Quality
Point quality is not propagated. If the selected LTYPE is currently not defined in the attached
analog input point (LB field), then the ALVAL output will go to zero (0), and the ACT output will
reset. Both outputs will also go to BAD quality.
SID Storage
In order to assist with graphics programming, all input and output point SIDs are stored in fields in
the algorithm. This allows the graphic to access multiple SIDs by accessing a single SID (the
algorithm LC record).
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

C0 - SID

Variable

Required

R1 - Value

Variable

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

--

Analog input point.

LA

Optional

--

Alarm limit value.

LA

Variable

Optional

--

Alarm active.

LD, LP

Data Init.

Required

Alarm Type Parameter:


LQ - LTYPE and QUAL Value is 0.
LQC - LTYPE, QUAL,
and cutout. Value is 1.
ALMQC - LTYPE
including lower limits,
QUAL, and cutout. Value
is 2.

Inputs:
IN
Outputs:
ALVAL

C1 - SID
ACT

G0 - Value
C2 - SID

Params:
ATYPE

REF_1100

B0 - Enum

--

55

5.4 ALARMLIMIT

56

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

LTYPE

B1 - Enum

Data Init.

Required

Limit Type Parameter:


HIGH_UD - UH. Output is
val(UH). Value is 0.
HIGH1 - HL. Output is
val(HL). Value is 1.
HIGH2 - ZH. Output is
val(ZH). Value is 2.
HIGH3 - 3Y. Output is
val(3Y). Value is 3.
HIGH4 - 4Y. Output value
is val(4Y). Value is 4.
LOW_UD - UL. Output is
val(UL). Value is 5.
LOW1 - LL. Output is
val(LL). Value is 6.
LOW2 - ZL. Output is
val(ZL). Value is 7.
LOW3 - 3Z. Output is
val(3Z). Value is 8.
LOW4 - 4Z. Output is
val(4Z). Value is 9.

--

QUAL

B2 - Enum

Data Init.

Required

Configured Quality
Parameter:
LTYPE - Value is 0.
LTYPE or BAD - Value is
1.
LTYPE or BAD, POOR Value is 2.
LTYPE or BAD, POOR,
FAIR - Value is 3.
LTYPE and GOOD Value is 4.
LTYPE and GOOD, FAIR
- Value is 5.
LTYPE and GOOD, FAIR,
POOR - Value is 6.

--

* ALIM

R2

Alg. Init.

Variable

Alarm limit, same value as


ALVAL. Used to reconcile
alarm limit to database.

--

HDB

R3

Alg. Init.

Variable

High deadband value. Used


to reconcile alarm limit for
control sheet display.

--

LDB

R4

Alg. Init

Variable

Low deadband value. Used


to reconcile alarm limit for
control sheet display.

--

* HIAL

R5

Alg. Init.

Variable

High incremental alarm limit


value. Used to reconcile
alarm limit for control sheet
display.

--

REF_1100

5.4 ALARMLIMIT

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

* LIAL

R6

Alg. Init.

Variable

DEFAULT
VALUE
0

DESCRIPTION

MIN.
POINT
REC.

Low incremental alarm limit


value. used to reconcile
alarm limit for control sheet
display.

--

* Even though these parameters are listed as "Alg. Init.," they are reconciled to the control sheet for display
purposes.

REF_1100

57

5.5 ALARMMON

5.5

ALARMMON
Description
The ALARMMON algorithm sets OUT equal to TRUE if any of the inputs are in alarm (alarm
status is TRUE). OUT is set to TRUE if unacknowledged and alarm bits are set in the first status
word of the point or alarm bit is TRUE and unacknowledged is FALSE.
The inputs are optional, numbering from 1 through 16, and may be analog or digital types. The
ALRM flag determines the type of alarm check that the algorithm performs.
If the ALRM flag is 0 (X1=0), the optional output (FOUT) is set FALSE if no inputs went into alarm
since the last loop. FOUT is set TRUE for one loop when inputs go into alarm.
If the ALRM flag is 1 (X1=1), the digital output (FOUT) is set TRUE if one or more inputs have
their unacknowledged alarm bit set to TRUE.
If the ALRM flag is 2 (X1=2), the OUT point is set to a 1 when any of the Inputs are in alarm. The
FOUT point is set to a 1 (for 1 loop) if any of the inputs go into alarm and they were not in Alarm
in the previous loop.
If the ALRM flag is 3 (X1=3), the OUT point is set to TRUE when any of the input points are in
ALARM. The FOUT point is set to a TRUE whenever any of the input points have both their
'ALARM' and 'unacknowledged' bits set TRUE.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

58

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init.

Required

DEFAULT
VALUE
16

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram
Number

REF_1100

5.5 ALARMMON

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

ALRM

X1-Byte

Data Init.

Optional

DEFAULT
VALUE
0

DESCRIPTION

Type of alarm check:

MIN.
POINT
RECORD
-

0 = New Alarm
1 = Unacknowledged
alarm
2 = New alarm/Any
alarm
3 = Unacknowledged
alarm/Any alarm
-

Variable

Optional

Input (analog or
digital)

LA, LD

OUT

Variable

Required

Output (digital)

LD, LP

FOUT

Variable

Optional

Alarm Check
Output (digital)

LD, LP

IN1

IN16

State change digital points should not be used since the alarm status is set TRUE for each state change. This
is an improper use of this algorithm.

REF_1100

59

5.6 ANALOG DEVICE (ADEVICE)

5.6

ANALOG DEVICE (ADEVICE)


Description
The Analog Output Device algorithm is used to interface to Motor Control Centers (MCCs). Under
normal operation, the analog device algorithm attempts to control the device.
When the Analog Device algorithm is in AUTO, the error is calculated by taking the feedback
minus the demand times a sensitivity factor. The default sensitivity factor is one. If the error is less
than the inner deadband, the analog output is set to zero. If the error is greater than the outer
deadband, the analog output is set equal to this error. If the error is between the two deadbands,
the error is scaled between zero and one. The closer the error is to the outer deadband, the
closer the scale factor to one. The closer the error is to the inner deadband, the closer the scale
factor is to zero. The output is simply the error multiplied by the scale factor. The output is
clamped to the clamping limits (MAX). The quality of OUT is set to the worst quality of the two
inputs when not in tracking mode.
The shed relay is a copy of the tracking flag (IN3). If the tracking flag (IN3) is reset or the tracking
input indicates that there is tracking, the tracking output is equal to the tracking input. When
tracking, quality is set to the quality of the track input variable.
Tracking Signals
Tracking is performed through signals passed in the upper 16 bits of the third status word of the
analog tracking point. This algorithm takes the following action in response to the information
found in the digital input signal TRIN:
BIT

60

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed Through

17

Track if Lower

No Action

Not Used

18

Track if Higher

No Action

Not Used

19

Lower Inhibit

No Action

Not Used

20

Raise Inhibit

No Action

Not Used

21

Conditional Track

Implemented

Passed Through

22

Not Used

No Action

Not Used

23

Deviation Alarm

No Action

Not Used

24

Local Manual Mode

No Action

Not Used

25

Manual Mode

No Action

Not Used

26

Auto Mode

No Action

Not Used

27

Not Used

No Action

Not Used

28

Not Used

No Action

Not Used

29

Not Used

No Action

Not Used

30

Low Limit Reached

Implemented

Passed Through

31

High Limit Reached

Implemented

Passed Through

REF_1100

5.6 ANALOG DEVICE (ADEVICE)


Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init

Optional

118

Tuning Diagram
Number

IN1G

R6

Tuning
Constant

Required

1.0

Demand Gain

IN1B

R7

Tuning
Constant

Required

0.0

Demand Bias

IN2G

R8

Tuning
Constant

Required

1.0

Feedback Gain

IN2B

R9

Tuning
Constant

Required

0.0

Feedback Bias

TPSC

S1

Tuning
Constant

Required

100.00

Output Top of Scale

BTSC

S2

Tuning
Constant

Required

0.0

Output Bottom of
Scale

DLAY

G0

Tuning
Constant

Required

0.0

Deviation Time
Delay

ODBN

R1

Tuning
Constant

Required

0.0

Outer Deadband

IDBN

R2

Tuning
Constant

Required

0.0

Inner Deadband

MAX

R3

Tuning
Constant

Required

0.0

Maximum Output

SENS

R4

Tuning
Constant

Required

1.0

Sensitivity

DEVA

R5

Tuning
Constant

Optional

0.0

Deviation
Deadband

IN1

Variable

Required

Demand

LA

TOUT

Variable

Required

Tracking Output

LA

IN2

Variable

Required

Feedback

LA

REF_1100

61

5.6 ANALOG DEVICE (ADEVICE)

N AM E

62

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN3

Variable

Required

Tracking Flag

LD

OUT

Variable

Required

Analog Output

LA

TRIN

Variable

Required

Track Input

LA

OUT2/
SHED

Variable

Optional

Shed Relay

LD

OUT3/
OUTU

Variable

Optional

Up Analog

LA

OUT4/
OUTD

Variable

Optional

Down Analog

LA

OUT5

Variable

Optional

Deviation Alarm

LD

REF_1100

5.7 ANALOGDRUM

5.7

ANALOGDRUM
Description
The ANALOGDRUM algorithm is a software drum controller with one analog output value and up
to 30 steps OR a software drum controller with two analog output values and up to 15 steps. The
output selected is based on the current step number and a list of up to 30 /15 initialized real
values. The current step number may be tracked to a selected step (TRIN) when in tracking mode
(TMOD = TRUE), increased (INC), or decreased (DEC). The current step number is only
increased or decreased on a FALSE to TRUE transition of INC and DEC. The maximum number
of steps must be initialized. When the step number becomes greater than the maximum number
of steps, the current step number is reset to one.
The track input value (TRIN) and output value (OUT) are checked for invalid real numbers. If a
tracking request is received and TRIN is an invalid number, then the tracking request is ignored.
However, the current step can be increased (using INC) or decreased (using DEC) even when
TRIN is an invalid number. If the algorithm calculates an invalid real number output, the value is
invalid and the quality is set to BAD.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init

INC

DEC

Required

101

Tuning Diagram
number

Variable

Required

Input (digital signal


to increase the step
number)

LD, LP

Variable

Required

Input (digital signal


to decrease the step
number)

LD, LP

TMOD

Variable

Required

Input (digital signal);


tracking request

LD, LP

TRIN

Variable

Required

Input (analog); tracks


the step number to
this value

LA

Tuning
Constant

Required

Maximum number of
steps

NMIN

REF_1100

X1-Byte

MIN.
POINT
RECORD
-

63

5.7 ANALOGDRUM

64

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

R01

R1-Real

Tuning
Constant

R02

R2-Real

R03

MIN.
POINT
RECORD

Optional

Output value for


Step 1
(+ or -)

Tuning
Constant

Optional

0.0

Output value for


Step 2
(+ or -)

R3-Real

Tuning
Constant

Optional

0.0

Output value for


Step 3
(+ or -)

R04

R4-Real

Tuning
Constant

Optional

0.0

Output value for


Step 4
(+ or -)

R05

R5-Real

Tuning
Constant

Optional

0.0

Output value for


Step 5
(+ or -)

R06

R6-Real

Tuning
Constant

Optional

0.0

Output value for


Step 6
(+ or -)

R07

R7-Real

Tuning
Constant

Optional

0.0

Output value for


Step 7
(+ or -)

R08

R8-Real

Tuning
Constant

Optional

0.0

Output value for


Step 8
(+ or -)

R09

R9-Real

Tuning
Constant

Optional

0.0

Output value for


Step 9
(+ or -)

R10

S1-Real

Tuning
Constant

Optional

0.0

Output value for


Step 10
(+ or -)

R11

S2-Real

Tuning
Constant

Optional

0.0

Output value for


Step 11
(+ or -)

R12

S3-Real

Tuning
Constant

Optional

0.0

Output value for


Step 12
(+ or -)

R13

S4-Real

Tuning
Constant

Optional

0.0

Output value for


Step 13
(+ or -)

R14

S5-Real

Tuning
Constant

Optional

0.0

Output value for


Step 14
(+ or -)

R15

S6-Real

Tuning
Constant

Optional

0.0

Output value for


Step 15
(+ or -)

REF_1100

5.7 ANALOGDRUM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

R16

S7-Real

Tuning
Constant

Optional

0.0

Output value for


Step 16 (+ or -) or
Output value 2 for
Step 1

R17

S8-Real

Tuning
Constant

Optional

0.0

Output value for


Step 17 (+ or -) or
Output value 2 for
Step 2

R18

S9-Real

Tuning
Constant

Optional

0.0

Output value for


Step 18 (+ or -) or
Output value 2 for
Step 3

R19

T1-Real

Tuning
Constant

Optional

0.0

Output value for


Step 19 (+ or -) or
Output value 2 for
Step 4

R20

T2-Real

Tuning
Constant

Optional

0.0

Output value for


Step 20 (+ or -) or
Output value 2 for
Step 5

R21

T3-Real

Tuning
Constant

Optional

0.0

Output value for


Step 21 (+ or -) or
Output value 2 for
Step 6

R22

T4-Real

Tuning
Constant

Optional

0.0

Output value for


Step 22 (+ or -) or
Output value 2 for
Step 7

R23

T5-Real

Tuning
Constant

Optional

0.0

Output value for


Step 23 (+ or -) or
Output value 2 for
Step 8

R24

T6-Real

Tuning
Constant

Optional

0.0

Output value for


Step 24 (+ or -) or
Output value 2 for
Step 9

R25

T7-Real

Tuning
Constant

Optional

0.0

Output value for


Step 25 (+ or -) or
Output value 2 for
Step 10

R26

T8-Real

Tuning
Constant

Optional

0.0

Output value for


Step 26 (+ or -) or
Output value 2 for
Step 11

R27

T9-Real

Tuning
Constant

Optional

0.0

Output value for


Step 27 (+ or -) or
Output value 2 for
Step 12

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

65

5.7 ANALOGDRUM

66

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

R28

U1-Real

Tuning
Constant

Optional

0.0

Output value for


Step 28 (+ or -) or
Output value 2 for
Step 13

R29

U2-Real

Tuning
Constant

Optional

0.0

Output value for


Step 29 (+ or -) or
Output value 2 for
Step 14

R30

U3-Real

Tuning
Constant

Optional

0.0

Output value for


Step 30 (+ or -) or
Output value 2 for
Step 15

STEP

Variable

Required

Output (analog); first


selected by the
current step number

LA

OUT

Variable

Required

Output (analog);
selected by the
current step number

LA

OUT2

Variable

Optional

Output (analog);
selected by the
current step number

LA

REF_1100

5.8 AND

5.8

AND
Description
The AND algorithm is a logical AND gate that can implement up to eight inputs. For the AND
algorithm, the output equals the logical AND of two to eight inputs (that is, all inputs must be
TRUE for the output to be TRUE). AND requires at least two inputs and up to eight digital inputs.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (digital)

LD, LP

IN2

Variable

Required

Input (digital)

LD, LP

IN3

Variable

Optional

Input (digital)

LD, LP

IN4

Variable

Optional

Input (digital)

LD, LP

IN5

Variable

Optional

Input (digital)

LD, LP

IN6

Variable

Optional

Input (digital)

LD, LP

IN7

Variable

Optional

Input (digital)

LD, LP

IN8

Variable

Optional

Input (digital)

LD, LP

OUT

Variable

Req'd./Opt.

Output (digital)

LD, LP

REF_1100

67

5.8 AND

Note: Output is required if connected to anything other than another OR or AND.

Function
OUT = IN1 AND IN2 AND IN3 AND IN4 AND IN5 AND IN6 AND IN7 AND IN8

68

REF_1100

5.9 ANNUNCIATOR

5.9

ANNUNCIATOR
Description
The ANNUNCIATOR algorithm calculates one alarm window state of a lamp box, based on the
result of annunciator logic (IN1), the previous window state (OUT), and the inputs from the
operator push-button interface (ACK, RSET, TEST). The algorithm also determines the state of
the horn (HORN) and the chime (CHIM) based on IN1, OUT, and the inputs PRHN and PCHM.
Annunciator Input (IN1)
IN1 can be an analog, digital, or packed point. If IN1 is a packed point, the algorithm will count
each bit. If all 16 bits are set, then the algorithm assigns a value of 16 to IN1. If 15 bits are set,
regardless of which bits, then the algorithm assigns a value of 15 to IN1, and so on. Once the
value is determined, the algorithm will compare the value with the value of the last alarm state
(OUT).
Last Alarm State (OUT)
If IN1<=OUT and the OUT 1W unacknowledged bit is set and the user sets the ACK input true,
the algorithm will attempt to reset the OUT 1W unacknowledged bit.
Once the IN1 value is processed, the algorithm will set OUT equal to IN1
Fast Light Output (FAST)
The FAST output will be set true in the following instances:
1. If IN1 > OUT
2. If IN1 <= OUT and the OUT 1W unacknowledged bit is set and the ACK input is false and
either OUT 1W better alarm bit is not set or IN1 >= 0.
Slow Light Output (SLOW)
The SLOW output will be set true in the following instances:
1. If IN1 = 0 and the OUT 1W unacknowledged bit is set and the ACK input is true.
2. If IN1 = 0 and the OUT 1W unacknowledged bit is not set and the OUT 1W reset bit is set and
the RSET input is false.
Modify Light Output (MDFY)
The MDFY output will be set true in the following instance:
1. If 0 < IN1 <= OUT and the OUT 1W unacknowledged bit is set and the ACK input is false and
the OUT 1W better alarm bit is set.
Light Output (STAT)
The STAT output will be set true in the following instances:
1. If TEST input is true.

REF_1100

69

5.9 ANNUNCIATOR
2. If FAST is true.
3. If SLOW is true.
4. If MDFY is true.
5. If 0 < IN1 <= OUT and the OUT 1W unacknowledged bit is set and the ACK input is true.
6. If IN1 <= OUT and the OUT 1W unacknowledged bit is not set.
Note: All lights will be turned off if IN1 = 0 and the OUT 1W unacknowledged biy and reset bits
are not set.
Chime Output (CHIM)
The CHIM output will be set true in the following instances:
1. IN1 < OUT
2. If IN1 = 0 and the OUT 1W unacknowledged bit is set and the ACK input is true.
3. If Previous Chime Input (PCHM) is set.
Horn Output (HORN)
The HORN output will be set true in the following instances:
1. IN1 > OUT
2. If Previous Horn Input (PRHN) is set.
Invalid Numbers and Quality
If the value of IN1 is invalid or if the calculated value of OUT (written to the point record) is invalid,
the quality and reason of OUT is set to BAD.
Functional Symbol

70

REF_1100

5.9 ANNUNCIATOR
Algorithm Record Type = None
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input

LA, LD, LP

ACK

Variable

Required

Acknowledge Input
(digital)

LD, LP

RSET

Variable

Required

Reset Input (digital)

LD, LP

TEST

Variable

Required

Test Input (digital)

LD, LP

PRHN

Variable

Required

Previous Horn Input


(digital)

LD, LP

PCHM

Variable

Required

Previous Chime Input


(digital)

LD, LP

OUT

Variable

Required

Output (analog)

LA

FAST

Variable

Required

Fast Flash Output


(digital)

LD, LP

SLOW

Variable

Required

Slow Flash Output


(digital)

LD, LP

MDFY

Variable

Required

Modified Flash Output


(digital)

LD, LP

STAT

Variable

Required

Window State (on/off)


Output (digital)

LD, LP

HORN

Variable

Required

Current Horn Output


(digital)

LD, LP

CHIM

Variable

Required

Current Chime Output


(digital)

LD, LP

REF_1100

71

5.10 ANTILOG

5.10 ANTILOG
Description
The ANTILOG algorithm scales an input value and outputs the antilog of the scaled value.
If the scaled input is outside the range for which the antilog can be stored as a real number, an
optional out-of-range digital is set, and the output value is set to the corresponding limiting
value.
Two algorithm tuning parameters are used: one for the scaling factor, and one to select the base
to be used for the calculation (base 10 or the natural base e, where the natural base e is the
default).
Invalid Numbers and Quality
The value of IN1 is checked for invalid real numbers. If IN1 is invalid, the value of OUT equals the
invalid value of IN1, and OUT's quality is set to BAD and conditional calculated reason is set. The
quality of flag FOUT also is set to BAD. If IN1 is valid, the quality and reasons of IN1 are
propagated to OUT.
Note: Other logarithmic algorithms are LOG and NLOG.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

72

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init.

Required

DEFAULT
VALUE
64

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram Number

REF_1100

5.10 ANTILOG

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

BASE

X1-Byte

Data Init.

Optional

DEFAULT
VALUE
0

DESCRIPTION

MIN.
POINT
RECORD

Base selection:

0 = Natural base e
1 = Base 10
Note: Any positive
integer selects Base 10
operation.
SCAL

R1-Real

Tuning
Constant

Optional

0.0

Scaling factor

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog); antilog


of the input value

LA

FOUT

Variable

Optional

Output (digital);
out-of-range alarm

LD, LP

Function
OUT = e (IN1 x SCAL) if BASE = 0
OR
OUT = 10(IN1 x SCAL) if BASE = 1
x

Note: For range-checking purposes, the upper and lower limits of x such that e can be
represented as a real number are:
HIGH = 88.72 (HIGH is less than
IN * (3.4E + 38) = 88.722)
LOW = -87.31 (LOW is greater than
IN * (4.4E - 38) = -87.316)

REF_1100

73

5.11 ARCCOSINE

5.11 ARCCOSINE
Description
The ARCCOSINE algorithm performs the mathematical arc cosine function. ARCCOSINE has
one input and one output analog point. Each time the algorithm is executed, if the output is on
scan, it is set to the ARCCOSINE of the input. The output of this algorithm is in radians. If an
output in degrees is desired, multiply it by 57.29579 to convert to degrees. If the input to this
algorithm is outside the range of -1.0 to +1.0, the output is an invalid number and the drop is
placed into alarm.
Invalid Real Numbers and Quality
Analog input values are checked for invalid real numbers. If the input value is invalid, the value of
the output is invalid and its quality is set to BAD. If the input is valid, the quality of the input is
propagated to the output.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function
OUT = ARCCOSINE (IN1)

74

REF_1100

5.12 ARCSINE

5.12 ARCSINE
Description
The ARCSINE algorithm performs the mathematical arc sine function. ARCSINE has one input
and one output analog point. Each time the algorithm is executed, if the output is on scan, it is set
to the ARCSINE of the input. The output of this algorithm is in radians. If an output in degrees is
desired, multiply it by 57.29579 to convert to degrees. If the input to this algorithm is outside the
range of -1.0 to +1.0, the output is an invalid number and the drop is placed into alarm.
Invalid Real Numbers and Quality
Analog input values are checked for invalid real numbers. If the input value is invalid, the value of
the output is invalid and its quality is set to BAD. If the input is valid, the quality of the input is
propagated to the output.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function
OUT = ARCSINE (IN1)

REF_1100

75

5.13 ARCTANGENT

5.13 ARCTANGENT
Description
The ARCTANGENT algorithm performs the mathematical arc tangent function. ARCTANGENT
has one input and one output analog point. Each time the algorithm is executed, if the output is on
scan, it is set to the ARCTANGENT of the input. The output of this algorithm is in radians. If an
output in degrees is desired, multiply it by 57.29579 to convert to degrees.
Invalid Real Numbers and Quality
Analog input values are checked for invalid real numbers. If the input value is invalid, the value of
the output is invalid and its quality is set to BAD. If the input is valid, the quality of the input is
propagated to the output.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function
OUT = ARCTANGENT(IN1)

76

REF_1100

5.14 ASSIGN

5.14 ASSIGN
Description
The ASSIGN algorithm transfers point value and the quality of one point to another point of the
same record type. The algorithm allows value and quality to be passed from one analog to
another analog point, or from a digital to another digital point or from one packed to another
packed point. You must specify an output point name - default points may not be used.
Invalid Real Numbers and Quality
If the input point is an analog point, the value is checked for an invalid real number. If the input
value is invalid, the value of the output is invalid and its quality is set to BAD.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input

LA,LD,LP

OUT

Variable

Required

Output

LA,LD,LP

REF_1100

77

5.15 ATREND

5.15 ATREND
Description
The ATREND algorithm outputs a user-specified point to a strip chart recorder for trending. By
tuning the algorithm, the operator may change the point being trended to any point in the system
that is on the Ovation Network. Any point with a system identification (that is, LA/LD record size or
larger) can be trended, regardless of the Controller in which the point is located or used. The
output to the recorder is set to zero percent for five seconds and then to 100 percent for 10
seconds to indicate that the point being trended or its scaling has been changed. A Tuning
diagram allows the point name to be entered to change the point being trended.
Top of scale and bottom of scale values may also be specified on-line and are used to convert an
analog point's current value to a percentage of full scale. A digital point's current value is output
as either 25 percent (FALSE) or 75 percent (TRUE). This converted value is then normalized to
be output to a specified analog output point card. To time tag each hour during a trend, the output
to the recorder may be set to zero percent for five seconds at the start of each hour when this is
initialized in the X3 field of algorithm record. If you are not trending a point, a value of zero is
output to the I/O card. The output (TRND) is set TRUE when a point is being trended. If no point
is being trended, TRND is set FALSE.
Note: ATREND can only trend points on a local network, not on a remote network.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

78

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init.

Required

DEFAULT
VALUE
18

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram Number

REF_1100

5.15 ATREND

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

TYPE

X3-Byte

Data Init.

Optional

DEFAULT
VALUE
0

DESCRIPTION

MIN.
POINT
RECORD

Recorder card type:

0 = 1 to 5 V or 4 to 20
mA
Q-Line
1 = 0 to 10 V Q-Line
2 = 1 to 5 V or 4 to 20
mA
Q-Line with hourly marks
3 = 0 to 10 V Q-Line with
hourly marks
TRND

Variable

Required

Output (digital)

LD, LP

CARD

Variable

Required

Point with Recorder


hardware address
(analog).

LA

Note: The following fields in the algorithm record are used to trend a particular point. The Tuning diagram
associated with the tuning of this algorithm enables you to initialize and tune these fields.
LC Alg. Rec. Field
R2-Real
R3-Real

Type
Tuning Constant
Tuning Constant

Description
Top of scale value
Bottom of scale value

G0-Integer

Tuning Constant

System identification of the point being


trended. The point name entered on the
tuning diagram is automatically
converted to the system identification to
be stored in this field.

REF_1100

79

5.16 AVALGEN

5.16 AVALGEN
Description
The AVALGEN algorithm initializes an analog point. For the AVALGEN algorithm, the output is
the analog value stored in the tuning constant (VALUE). This value is a set point or bias to other
algorithms. If VALUE is entered incorrectly or if the data is corrupted, then the algorithm
generates an invalid number, the value of OUT is invalid, and its quality is set to BAD.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init.

Required

VALU

R1-Real

Tuning
Constant
Variable

OUT

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

65

Tuning Diagram
Number

Required

Analog value (+ or -)
of output

Required

Output (analog)

LA

Function
OUT = VALU

80

REF_1100

5.17 BALANCER

5.17 BALANCER
Description
The BALANCER algorithm monitors the modes of up to 16 downstream algorithms and performs
a user-defined type of tracking when all of the downstream algorithms are requesting the
upstream algorithm to track. A special configuration of the BALANCER algorithm enables it to be
used to balance the outputs of several downstream Manual/Auto (M/A) station algorithms.
The actual number of downstream algorithms is initialized by the user. You connect the output of
this algorithm to the IN1 input of any downstream algorithm or to the IN2 input of a downstream
selector type algorithm. When configuring the BALANCER algorithm, you specify which
algorithms (in other sheets and/or drops) use the output signal of the BALANCER algorithm. The
BALANCER algorithm checks the feedback signals to see how many of the downstream
algorithms are requesting the upstream algorithm to track (how many are in Manual mode). It then
uses this information, along with the type of control initialized, to calculate the analog output value
which is being sent to the inputs of these downstream algorithms.
Note: The first time BALANCER is executed, or in a RESET/POWER UP occurrence, the
algorithm does not use the track input values passed back by the downstream algorithms until
the track inputs have been calculated by the downstream algorithms.
Also, when connecting tracking points, you must connect them sequentially. For example, the
BALANCER algorithm assumes that if the number of tracking points is three, then they must be
TRK1, TRK2, TRK3. They cannot be TRK1, TRK2, TRK4.
Functional Symbol

REF_1100

81

5.17 BALANCER

Note: If the TRK inputs are all raise inhibit or lower inhibit or a combination of raise inhibit and
manual or lower inhibit and manual, the BALANCER output value will stay at the value prior to
the inhibit.
In a raise inhibit condition, the value cannot be raised; however it can be lowered. Conversely,
in a lower inhibit condition, the value cannot be lowered; however it can be raised.
Control Modes
There are two types of control: NORMAL and MA BALANCER. You must select a type of tracking
(highest, lowest or average) to be used for both types of control.
NORMAL
If all of the downstream algorithms are requesting the upstream algorithm to track, then the output
of the BALANCER algorithm is either the highest, the lowest or the average of the analog track
signals passed back from the downstream algorithms. The quality of the output is then the worst
quality of the analog track signals passed back.
The gains and biases of the downstream algorithms that are between the BALANCER and the
MASTATION algorithms must be equal to 1.0 and 0.0, respectively, for this type of control to be
implemented properly.
If any of the downstream algorithms are not requesting the upstream algorithm to track, then the
output of the BALANCER algorithm is the gained and biased analog input value. The quality of
the output is the quality of the input value.
The downstream algorithms may be any of the standard algorithms. Internal tracking within the
BALANCER algorithm is implemented when switching from the highest, lowest, or average of the
analog track signals to the gained and biased analog input value.
MA BALANCER
Note: When the algorithm is tracking in "Balancer" mode, the TOUT value is the average of all
the TRK inputs.
If all of the downstream MA algorithms are requesting the upstream algorithm to track, then the
output of the BALANCER algorithm is either the highest, the lowest or the average of the analog
track signals passed back from the downstream algorithms.
If any of the downstream algorithms are not requesting the upstream algorithm to track, then the
output of the BALANCER algorithm is a value which causes the average of all the downstream
algorithm outputs to be equal to the gained and biased input value.
The quality of the output is the worst quality of the analog track signals passed back.
The downstream algorithms must be MASTATION and the gains and biases of these algorithms
must all be equal to 1.0 and 0.0, respectively, for this type of control to be implemented properly.
Internal tracking within the BALANCER algorithm is implemented when switching from the
highest, lowest, or average of the analog track signals to the value which balances the
downstream algorithm outputs.
The analog track signals are used regardless of their quality.

82

REF_1100

5.17 BALANCER
Invalid Real Numbers and Quality
If the algorithm generates an invalid output value, the last valid value is used for the output, and
the quality of OUTPUT point is set to BAD. In addition, if the algorithm receives an invalid value
as an input, or calculates an invalid value as the output, the drop is placed into alarm.
Initializing the Algorithm
CAUTION: The feedback tracking signals from the downstream algorithms must be initialized
before downloading the BALANCER algorithm. If the feedback tracking signal information is
missing, errors result.
The Control Builder allows you to type in or connect signal lines for TOUT point from the
downstream algorithms. The tracking point is fed back as a analog track input to the BALANCER
algorithm to be used to calculate the correct analog output value.
Tracking Signals
This algorithm takes the following action in response to the information found in the analog track
signals (in the third status field), which are passed back from the downstream algorithms:
BIT

REF_1100

DESCRIPTION

ACTION

TRK SIGNAL

16

Track

Implemented

Passed through*

17

Track if lower

No action

Passed through**

18

Track if higher

No action

Passed through**

19

Lower inhibit

No action

Passed through***

20

Raise inhibit

No action

Passed through***

21

Conditional Track

No action

Not used.

22

Not used

No action

Not used.

23

Deviation Alarm

No action

Not used.

24

Local Manual mode

No action

Not used.

25

Manual mode

No action

Not used.

26

Auto mode

No action

Not used.

27

Not Used

No action

Not used.

28

Not Used

No action

Not used.

29

Not Used

No action

Not used.

30

Low limit reached

No action

Low limit reached.

31

High limit reached

No action

High limit reached.

83

5.17 BALANCER

BIT

DESCRIPTION

ACTION

TRK SIGNAL

* Only when all of the track signals from the downstream algorithms are requesting the upstream
algorithm to track.
** Only when none of the track signals from the downstream algorithm are requesting the
upstream algorithm to track and when all of the downstream signals are requesting this signal.
*** Only when none of the track signals from the downstream algorithms are requesting the
upstream algorithm to track and when all of the downstream signals are requesting this signal.
The signals are set according to the definitions given in setting tracking signals (see page 16).

The output is limited by high and low limits specified by the user. The high and low limit flags and
the tracking signal from the algorithm are output in the third status field of the TOUT, to be used
for display and by an upstream algorithm.
Note: If the algorithm generates an invalid track output value, the IN1 input is used as the track
output value, unless it is invalid. The track output value is not updated if both the calculated
track output and IN1 input values are invalid. See guidelines in MASTATION algorithm
description for setting MASTATION CNFG parameter.
Algorithm Record Type= LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init

Required

NMIN

X1-Byte

Data Init.

CNTL

G3-Integer
Bit 0

Data Init.

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

79

Tuning Diagram
Number.

Required

Number of
downstream
algorithms (up to 16).

Required

NORMAL

Type of control to be
implemented:

NORMAL = Normal
control mode.
BALANCER = MA
Balancer control
mode.
TRK

G3-Integer
Bits 1 and 2

Data Init.

Required

HIGHEST

Type of tracking to
be implemented:

HIGHEST: Highest
value.
LOWEST: Lowest
value.
AVERAGE: Average
value.
If CNTL is set to
BALANCER, TRK will
be treated as
average.

84

REF_1100

5.17 BALANCER

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

GAIN

R1-Real

Tuning
Constant

Required

1.0

Gain on input
variable. The gain on
the input should never
be initialized to zero; if
it is, the drop is
placed into alarm.

BIAS

R2-Real

Tuning
Constant

Optional

0.0

Bias on input variable.

TPSC

R3-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point.

BTSC

R4-Real

Tuning
Constant

Required

-100

Minimum value of the


output point.

R5-Real

Tuning
Constant

Required

2.5

Track ramp rate (units


per second).

TRAT

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Analog input variable

LA

TOUT

Variable

Required

Upstream input track


value, mode and
status of the algorithm

LA

OUT

Variable

Required

Analog output
variable.

LA

TRK01

Variable

Required

One feedback
tracking signal from a
downstream algorithm
which consists of
tracking value and
tracking signals (in
the third status field of
analog track point).

LA

TRK02

Variable

Required

One feedback
tracking signal from a
downstream algorithm
which consists of
tracking value and
tracking signals (in
the third status field of
analog track point).

LA

TRK03

Variable

Optional

One feedback
tracking signals from
a downstream
algorithm which
consists of tracking
value and tracking
signals (in the third
status field of analog
track point).

LA

TRK16

REF_1100

85

5.18 BCDNIN

5.18 BCDNIN
Description
The BCDNIN algorithm reads a packed point (IN) in Binary Coded Decimal (BCD), converts it to a
real number, and stores it in the AV field of the output record (OUT). You must indicate the type of
action to be taken on the input value. Direct action causes the input value to be read directly.
Inverse action causes the input value to be read and inverted (one's complement) before it is
used. You must specify the number of BCD digits to read and the bit position where the reading is
to begin.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definition
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Integer

Data Init.

Required

94

BITP

X2-Byte

Tuning
Constant

Required

NDIG

X1-Byte

Data Init.

CNTL

X3-Byte

Tuning
Constant

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram
Number

Bit position of the first


digit

Required

Number of digits to
read: 1, 2, 3, or 4

Optional

Direct

Control Action Indicator:

0 = Direct Action - Card


value is read from the
I/O Bus and used. This
is for a BCD display
where low is TRUE.
1 = Inverse Action Card value is read from
the I/O Bus, inverted
and then used. This is
for a BCD display where
high is TRUE.

IN

86

Variable

Required

Input (packed)

LP

REF_1100

5.18 BCDNIN

N AM E

LC ALG.
RECORD
FIELD

OUT

TYPE

REQUIRED/
OPTIONAL

Variable

Required

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Output (analog)

LA

Example 1
To read four BCD digits starting at Bit Position 0:
BITP = 0
NDIG = 4
Then, the current value of OUT is 6281.0.

Example 2
To read two BCD digits starting at Bit Position 4:
BITP = 4
NDIG = 2
Then, the current value of OUT is 28.

REF_1100

87

5.19 BCDNOUT

5.19 BCDNOUT
Description
The BCDNOUT algorithm reads a real value from input IN, converts it to binary-coded-decimal
(BCD), and outputs a number of digits to a packed output point. You must indicate the type of
action to take on the output value. Direct action causes the output value to be written directly.
Inverse action causes the value to be inverted (one's complement) before it is written to the output
point. You must specify the number of BCD digits to write, and the bit position where the writing is
to begin.
Invalid Numbers
The analog input (IN) is checked for invalid real numbers. If an invalid real number is entered as
IN, it is not written to the output point.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

88

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init.

Required

95

Tuning Diagram
Number

BITP

X2-Byte

Tuning
Constant

Required

Bit position of the first


digit

NDIG

X1-Byte

Data Init.

Required

Number of digits to
read: 1, 2, 3, or 4

REF_1100

5.19 BCDNOUT

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

CNTL

X3-Byte

Tuning
Constant

Optional

DEFAULT
VALUE
Direct

DESCRIPTION

MIN.
POINT
RECORD

Control Action Indicator:

0 = Direct Action - Card


value is read from the
hardware and used.
This is for a BCD
display where 0 is
TRUE.
1 = Inverse Action Card value is read from
the hardware, inverted
and then used. This is
for a BCD display where
1 is TRUE.

IN

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (packed)

LP

Example 1
To write four BCD digits, starting at Bit Position 0, where the current value of IN is 6281.0:
BITP = 0
NDIG = 4.

Example 2
To write two BCD digits, starting at Bit Position 4, where the current value of IN is 28.0:
BITP = 4
NDIG = 2

REF_1100

89

5.20 BILLFLOW

5.20 BILLFLOW
Description
The BILLFLOW algorithm generates an AGA3 gas flow calculation for orifices. It is applicable for
downstream and upstream static pressure measurements. It can be used for both tap and flange
orifices.
The super compressibility factor can be calculated one of two ways. The value can be passed in
the compressibility (SC) point, or the algorithm can calculate the compressibility factor with
additional information from the N2 and C02 tuning fields.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

90

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Integer

Data Init.

Required

115

FLOW

X2-Byte

Data Init.

Required

Downstream

XDO

R1-Real

Tuning
Constant

Required

DI

R2-Real

Tuning
Constant

PB

R3-Real

TB

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram
Number

Flow Element Type


(Downstream or
Upstream)

0.0

Orifice ID

Required

0.0

Pipe ID

Tuning
Constant

Required

14.73

Pressure Base

R4-Real

Tuning
Constant

Required

60.0

Temperature Base

TAP

X1-Byte

Data Init.

Required

Pipe

Tap Location (Flange


or Pipe)

CU

R6-Real

Tuning
Constant

Required

0.001

Cutoff

C02

R7-Real

Tuning
Constant

Required

0.75

Mole % C02

REF_1100

5.20 BILLFLOW

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

N2

R8-Real

Tuning
Constant

Required

0.48

DESCRIPTION

MIN.
POINT
RECORD

Mole % N2

SP

Variable

Required

Static Flowing
Pressure (PSIG)

LA

DP

Variable

Required

Orifice Differential
Pressure (IN WC)

LA

TEMP

Variable

Required

Temperature of Gas
(Deg. F)

LA

GRAV

Variable

Required

Specific Gravity

LA

SC

Variable

Optional

Super compressibility

LA

BP

Variable

Required

Barometric Pressure
(PSIA)

LA

OUT

Variable

Required

Gas Flow Output


(KCF/HR)

LA

REF_1100

91

5.21 BUFFER

5.21 BUFFER
Description
The BUFFER algorithm gathers the value and status of a point and associates a timestamp with
this information. The data is stored in a queue and is accessible via the High Speed Data
Acquisition (HSDA) Application Programming Interface (API). An API is an interface implemented
by a software program to enable interaction with other software, much in the same way that a
user interface facilitates interaction between humans and computers.
Functional Symbol

Requirements
A limited number of BUFFER algorithms may be used in any given Controller and control task
depending on the Controller processor and memory usage. It is up to the user to test the
algorithm/API performance to ensure data is being adequately collected.
Note: The API allows for up to 1,000 BUFFER algorithms per Controller; however, depending
on Controller processing time and memory usage, the Controller may not be able to support
1,000 BUFFER algorithms. Emerson recommends that all BUFFER algorithms be tested in a
worst case scenario on actual Controllers in order to prevent data loss.
The HSDA task in each Controller supports up to five individual connections.
HSDA API in each MMI supports up to 10 sessions.
Enable (ENBL)
The enable input (ENBL) parameter allows you to enable or disable the BUFFER algorithm. When
disabled, the BUFFER algorithm will not store any data and will not send any data to the queue
for retrieval. It will also zero out its internal buffer.
When enabled, the algorithm will immediately send data to the queue and will store up to 10 data
values in its own internal buffer. If no point is connected to the enable pin, the algorithm will
always be enabled.
On initial startup or if the algorithm is disabled, the STAT queue overflow bit, ACNT, TCNT, CEW,
and CER fields will be reset to zero.

92

REF_1100

5.21 BUFFER

Buffer Input Point (IN)


The buffer input point (IN) allows you to connect any analog (LA), digital (LD), or packed (LP)
point to the algorithm. When the algorithm is enabled, the algorithm will collect the value,
timestamp, and 1W field - First Status Word for LA and LD points, and the A3 field - Invalidity bits
for LP points. Collection occurs by exception or is based on deadband.
Timestamp
The timestamp is accurate to 1 millisecond resolution. The Controller provides the time based on
UTC (Coordinated Universal Time) time in the Controller. This information is stored in two
variables called timestampSeconds and timestampNanoseconds. The timestampSeconds
variable contains the amount of seconds since 12:00 AM January 1, 1970. The
timestampNanoseconds variable contains the amount of nanoseconds since the last full second.
Note: The time stored in timestampSeconds is provided in UTC. The user's application converts
this time to local time and adjusts a nanoseconds part from timestampNanoseconds.
After initial startup, the Controller uses the NTP server to set its calendar time. During this time,
the algorithm timestamp values may be invalid.
Timestamp Mode (TMODE)
The BUFFER algorithm allows you to configure how the algorithm retrieves the timestamp. If an
individual algorithm is selected, each BUFFER algorithm will retrieve a timestamp based on when
the algorithm was executed. If a control task is selected, then the control task will retrieve the
timestamp based on when it was executed and all BUFFER algorithms within the same control
task will use the same timestamp for that control cycle.
Deadbands
Analog Deadband (ADB)
If the connected point is an analog point, an analog deadband may be associated. The algorithm
uses the deadband to determine whether or not to collect the point's information and send it to the
queue. It uses the deadband as follows: the algorithm compares the previously collected value
with the currently scanned vaue for changes beyond the specified deadband value. For instance,
if the deadband is set to 5, and the point's current value is 9, but during the next control cycle, the
value is 12, the point will not be collected. However, if the point's value increases from 9 to 15 in
the next control cycle, the point information will then be collected and sent to the queue.
Digital Deadband (DDB)
If the connected point is a digital or packed point, a digital deadband may be associated. The
algorithm determines whether to collect the point information depending on which option is
selected:

0 to 1 Transition -- Information is collected when the point value or any bit in the point
transitions from a 0 to a 1.

1 to 0 Transition -- Information will be collected when the point value or any bit in the point
transitions from a 1 to a 0.

State Change -- Information will be collected when the point value or any bit in the point
changes.

REF_1100

93

5.21 BUFFER

Note: If a zero analog deadband is assigned, the algorithm will collect the point value by
exception. Also, if the 1W field - status word or the A3 field - invalidity bits change for the IN
point, then the point will be collected and placed into the queue regardless of deadbands.
High Speed Data Acquisition
When the BUFFER algorithm is enabled, the value, status, and timestamp of the input (IN) will be
written to element 1 of the fields defined in the template. For each subsequent loop time, if the
BUFFER algorithm determines the value/status is to be collected, it will continue to write to each
element, increasing the element by 1 each time. For instance, the algorithm writes to element 1,
then element 2, then element 3, and so forth. After the algorithm writes to the 10th element, it
starts with element 1 again. If the algorithm is disabled, it resets all elements and starts from
element 1 when enabled again.
HSDA task
The information stored in each element is read by the High Speed Data Acquisition task (HSDA)
and sent to the appropriate MMI that is requesting the information. If the HSDA task is unable to
read the values from the element fields prior to the algorithm rewriting to that element, the
algorithm will set the queue overflow bit in the status output (STAT). The algorithm continues
writing over each subsequent element. When the HSDA task is able to read the current element,
the queue overflow bit resets.
Note: The HSDA task runs at a higher priority than the control tasks in order to avoid
pre-emption by the control task.
Busy
The algorithm sets the busy bit to true when it is executing. The busy bit prevents the high-speed
data acquisition task from reading values in the middle of a data write. When the algorithm
finishes executing during a control task cycle, it resets the busy bit.
Queue Overflows
In order to determine a queue overflow, the algorithm and the HSDA task store a count of how
many times it has accessed the first element. For instance, the first time that the algorithm
completes writing to the first 10 elements, it stores a zero to the ACNT field; the next time the
algorithm writes to the first 10 elements, it stores a 1 to the ACNT field, and so on. After the
HSDA task reads the first 10 elements, it stores a zero to the TCNT field; the next time the HSDA
task reads the first 10 elements, it stores a 1 to the TCNT field, and so on.
In addition, the algorithm stores the current element written to the current element written (CEW)
field, and the HSDA task stores the current element read to the current element read (CER) field.
The BUFFER algorithm uses the information to determine if it has overwritten a field that has not
been read from yet. When this occurs, the queue overflow bit in the STAT output is set, and the
buffer continues to write values to each element. Any data not read by the HSDA task during this
time is lost. When the HSDA task is able to read the current element, the queue overflow bit
resets.
Note: To avoid overruns, the algorithm subtracts 10,000 from ACNT and TCNT once TCNT
reaches 10,000.

94

REF_1100

5.21 BUFFER
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

ENBL

C0 - SID

Variable

Optional

IN

C1 - SID

Variable

C2 - SID

ADB

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

--

Enable buffering.

LD/LP

Required

--

Point value to be
collected.

LA/LD/LP

Variable

Optional

--

Status and related bit


number
Enable = 0
Queue Overflow = 1

LP

R1

Tuning
Constant

Required

Analog Deadband.

--

DDB

G1

Tuning
Constant
(Enum)

Required

Digital Deadband:
0 = 0 to 1 Transition
1 = 1 to 0 Transition
2 = State Change

--

TMODE

X2

Data Init

Required

Timestamp Mode:
0 = Individual algorithm
1 = Control task

--

BUSY

X1

Alg. Init.

--

--

Algorithm is writing
values.

--

ACNT

G2

Alg. Init.

--

--

Algorithm Element Count.

--

TCNT

G3

Alg. Init.

--

--

HSDA Task Element


Count.

--

CEW

G4

Alg. Init.

--

--

Current Element Written.

--

CER

G5

Alg. Init.

--

--

Current Element Read.

--

ST1

B0

Alg. Init.

--

--

Status for Element 1.

--

ST2

B1

Alg. Init.

--

--

Status for Element 2.

--

ST3

B2

Alg. Init.

--

--

Status for Element 3.

--

ST4

YU

Alg. Init.

--

--

Status for Element 4.

--

ST5

B4

Alg. Init.

--

--

Status for Element 5.

--

ST6

B5

Alg. Init.

--

--

Status for Element 6.

--

ST7

B6

Alg. Init.

--

--

Status for Element 7.

--

ST8

B7

Alg. Init.

--

--

Status for Element 8.

--

ST9

B8

Alg. Init.

--

--

Status for Element 9.

--

ST10

B9

Alg. Init.

--

--

Status for Element 10.

--

Inputs:

Outputs:
STAT

Params:

REF_1100

95

5.21 BUFFER

96

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

TS1

D0

Alg. Init.

--

--

Timestamp in seconds for


Element 1.

--

TS2

YQ

Alg. Init.

--

--

Timestamp in seconds for


Element 2.

--

TS3

D2

Alg. Init.

--

--

Timestamp in seconds for


Element 3.

--

TS4

YP

Alg. Init.

--

--

Timestamp in seconds for


Element 4.

--

TS5

D4

Alg. Init.

--

--

Timestamp in seconds for


Element 5

--

TS6

D5

Alg. Init.

--

--

Timestamp in seconds for


Element 6.

--

TS7

D6

Alg. Init.

--

--

Timestamp in seconds for


Element 7.

--

TS8

YN

Alg. Init.

--

--

Timestamp in seconds for


Element 8.

--

TS9

D8

Alg. Init.

--

--

Timestamp in seconds for


Element 9.

--

TS10

D9

Alg. Init.

--

--

Timestamp in seconds for


Element 10.

--

TNS1

YM

Alg. Init.

--

--

Timestamp in
nanoseconds for Element
1.

--

TNS2

YL

Alg. Init.

--

--

Timestamp in
nanoseconds for Element
2.

--

TNS3

E2

Alg. Init.

--

--

Timestamp in
nanoseconds for Element
3.

--

TNS4

E3

Alg. Init.

--

--

Timestamp in
nanoseconds for Element
4.

--

TNS5

E4

Alg. Init.

--

--

Timestamp in
nanoseconds for Element
5.

--

TNS6

YC

Alg. Init.

--

--

Timestamp in
nanoseconds for Element
6.

--

TNS7

Y9

Alg. Init.

--

--

Timestamp in
nanoseconds for Element
7.

--

TNS8

E7

Alg. Init.

--

--

Timestamp in
nanoseconds for Element
8.

--

REF_1100

5.21 BUFFER

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

TNS9

E8

Alg. Init.

--

--

Timestamp in
nanoseconds for Element
9.

--

TNS10

Y8

Alg. Init.

--

--

Timestamp in
nanoseconds for Element
10.

--

VAL1

S1

Alg. Init.

--

--

Value for Element 1.

--

VAL2

S2

Alg. Init.

--

--

Value for Element 2.

--

VAL3

S3

Alg. Init.

--

--

Value for Element 3.

--

VAL4

S4

Alg. Init.

--

--

Value for Element 4.

--

VAL5

S5

Alg. Init.

--

--

Value for Element 5.

--

VAL6

S6

Alg. Init.

--

--

Value for Element 6.

--

VAL7

S7

Alg. Init.

--

--

Value for Element 7.

--

VAL8

S8

Alg. Init.

--

--

Value for Element 8.

--

VAL9

S9

Alg. Init.

--

--

Value for Element 9.

--

VAL10

T1

Alg. Init.

--

--

Value for Element 10.

--

REF_1100

97

5.21 BUFFER
HSDA API Description and Usage
The HSDA User API for Windows applications consists of the following files on each MMI:

hsda.dll

hsda.lib

hsda_defines.h

hsda.h

You must use these files to create your own application to communicate to selected Controllers in
order to collect data from each BUFFER algorithm.
Supplied Functions:

HsdaStatusType HsdaStartup()

HsdaStatusType HsdaSIDs(HsdaDropIdType originatingDrop,


HsdaSidType* pSidList, HsdaSidType* pInputSidList,
HsdaPointDataType *pDataTypes, UINT32* pCount)

HsdaStatusType HsdaSIDtoName(HsdaSidType sid, char*


buffer, UINT32* pCount)

HsdaStatusType HsdaStartLogging(HsdaSidType * pSidList,


UINT32 * pCount, HsdaSessionIdType * ID)

HsdaStatusType HsdaData(HsdaSessionIdType ID,


HsdaEventType * pEventList, UINT32 * pCount, BOOLEAN *
pMore)

HsdaStatusType HsdaDiagDrops(HsdaSessionIdType ID,


HsdaDropDiagType * pDropDiagList, UINT32 * pCount)

HsdaStatusType HsdaDiagSids(HsdaSessionIdType ID,


HsdaSidDiagType * pSidDiagList, UINT32 * pCount)

HsdaStatusType
HsdaResetStatisticalAttribute(HsdaSessionIdType ID,
HsdaStatisticalAttributeIdType attributeId);

HsdaStatusType HsdaStopLogging(HsdaSessionIdType ID)

HsdaStatusType HsdaShutdown()

Definitions:
#define HSDA_MAX_SIDS_ON_DROP
#define HSDA_CONNECTIONS_MAX

1000
10

typedef UINT32 HsdaSessionIdType;

98

REF_1100

5.21 BUFFER
typedef UINT16 HsdaDropIdType;

typedef UINT32 HsdaSidType;


// Represents the status of an HSDA operation
typedef union {
UINT16 wholeWord;
struct
{
// Invalid session Id was provided as an argument
to a HSDA function call
UINT16 invalid_id:1;
// Invalid SID was provided by user or drop returned
data corresponding to an unregistered SID
UINT16 invalid_sid:1;
// The drop rejected the connection because the
limit of the clients it can service simultaneously
was exceeded
UINT16 max_connections_exceeded:1;
// Drop not communicating
UINT16 drop_unavailable:1;
// One of the points for the session was not found
on the
Controller or it is occupied by another session.
UINT16 point_unavailable:1;
// The buffer which the user provided as an argument
for a HSDA
function call was too short
UINT16 buffer_too_short:1;
// Operating system error
UINT16 os_error:1;
// Buffer overflow on workstation side
UINT16 overflow:1;
// Problem with input sid for at least one algorithm
UINT16 input_sid_problem:1;
} bits;
} HsdaStatusType;

// The value for a status where no errors occurred


#define HSDA_OK 0

typedef union {
REAL32
INT32
UINT32
} HsdaValueType;

REF_1100

analog;
digital;
packed;

99

5.21 BUFFER
typedef struct {
HsdaValueType pointValue;
INT32
timestampSeconds;
INT32
timestampNanoseconds;
INT32
firstStatus;
} HsdaBufferDataType;

typedef union {
HsdaBufferDataType
} HsdaDataType;

typedef struct {
Sid_type
HsdaDataType
} HsdaEventType;

bufferData;

sid;
data;

typedef enum {
HSDA_SID_OK,
HSDA_SID_USED,
HSDA_SID_NOT_FOUND,
HSDA_SID_DROP_UNREACHABLE
} HsdaSidStatusType;

typedef struct {
Sid_type sid;
HsdaSidStatusType
} HsdaSidDiagType;

sidStatus;

typedef enum {
HSDA_CONN_CONNECTED,
HSDA_CONN_DROP_UNAVAILABLE,
HSDA_CONN_MAX_CLIENTS_EXCEEDED,
HSDA_CONN_BACKUP_NOT_READY,
HSDA_CONN_CONNECTING,
HSDA_CONN_UNSUPPORTED_PROTO_VERSION,
HSDA_CONN_UNKNOWN
} HsdaConnStatusType;

100

REF_1100

5.21 BUFFER
typedef enum
{
HSDA_ANALOG_TYPE,
HSDA_DIGITAL_TYPE,
HSDA_PACKED_TYPE,
HSDA_UNKNOWN_TYPE
} HsdaPointDataType;

// Defines a type for drop diagnostics


typedef struct {
// Ovation Network Drop Number of this drop
HsdaDropIdType dropNumber;
// TRUE if this drop reports as the active unit,
FALSE otherwise
BOOLEAN
isActive;
// The status of the connection between the workstation
and this drop
HsdaConnStatusType connectionStatus;
// Ovation Highway Drop Number of this drop's partner
HsdaDropIdType partnerNumber;
// The status of the connection between the workstation
and this drop's partner
HsdaConnStatusType partnerConnectionStatus;
// The number of events which were transferred to the
application from this drop
UINT32 eventCount;
// The number of lost data packets
UINT32 lostPacketCount;
// TRUE if an overflow occurred in the local HSDA
event buffer (indicates too slow collection by client
application), FALSE otherwise
BOOLEAN bufferOverflow;
// Total number of processed data frames
UINT32 totalFramesCount;
} HsdaDropDiagType;

REF_1100

101

5.21 BUFFER
// Represents the possible statistical attribute identifiers
typedef enum
{
// Identifier of unknown statistical attribute
HSDA_UNKNOWN_ATTRIBUTE,
// Identifier of statistical attribute indicating
the number of events which were transferred to the
application from this drop
HSDA_DROP_EVENT_COUNT,
// Identifier of statistical attribute indicating the
number of lost data packets
HSDA_DROP_LOST_PACKET_COUNT,
// Identifier of statistical attribute indicating
whether an overflow occurred in the local HSDA event
buffer
HSDA_DROP_BUFFER_OVERFLOW,
// Identifier of statistical attribute indicating
the total number of data frames processed
HSDA_DROP_TOTAL_FRAMES_COUNT,
} HsdaStatisticalAttributeIdType;

API Usage
Note: In the following procedure, steps that contain the word "must" are required by the user
application. Steps that contain the word "may" are optional.
Perform the following steps to collect the data:
1. You must call HsdaStartup () to initialize the HSDA mechanism.
2. You may call HsdaSIDs () to get a list of BUFFER algorithm SIDs defined within a given
Controller and the respective input point SIDs.
3. You may call HsdaSIDtoName () to get the point name of a specific SID.
4. You must call HsdaStartLogging () with a list of points to collect. This runs connections with
all originating drops and their partners. The connection to the backup Controller in a
redundant pair may be established only after the connection to the active (in control)
Controller has been established.
5. You must periodically call HsdaData () to get a list of value change events. The period must
be fast enough to prevent queue overflow.
6. If any problems with connections were detected during the HsdaData () call, then you may
call HsdaDiagDrops () to determine drop statuses.
7. If any problems with points were detected during the HsdaData () call, then you may call
HsdaDiagSids () to determine point SID statuses.
8. If you want to reset a statistical value, then you may call HsdaResetStatisticalAttribute()
with the value of the attribute identified by attributeId.
9. If you want to stop collecting data, call HsdaStopLogging (), to close connections for a
certain session.
10. When the application is finished, you must call HsdaShutdown () to terminate all HSDA
activity

102

REF_1100

5.21 BUFFER

Note: The Hsda API does not handle applications that share one session across multiple
threads. The behavior of such applications may be unpredictable.
HsdaStatusType HsdaStartup() Initializes Hsda API internals
HsdaStatusType HsdaSIDs(HsdaDropIdType originatingDrop, HsdaSidType* pSidList,
HsdaSidType* pInputSidList, HsdaPointDataType *pDataTypes, UINT32* pCount) Gets the
list of SIDs which belong to collection algorithms on the drop whose ID/number is equal to
originatingDrop. The list is returned in pSidList and the number of written entries is stored in
pCount. To prevent overflow, the caller places the maximum number of entries that can be
returned into pCount (as well as pInputSidList and pDataTypes). If more buffer algorithm SIDs
exist on the originatingDrop, the buffer_too_short bit is set in the returned status. Additionally,
for every buffer SID found, the function attempts to resolve the SID of the input point connected to
the buffer, and its corresponding data type (one of Analog/Digital/Packed). They are stored
respectively in the pInputSidList and pDataTypes arrays, at the index which corresponds to the
buffer algorithm sid entry in pSidList. If there were problems resolving any input point SID or its
data type, the input_sid_problem bit is set in the returned status.
HsdaStatusType HsdaSIDtoName(HsdaSidType sid, char* buffer, UINT32* pCount) - Gets
the name field of a point based on the supplied sid and copies it to the buffer pointed to by buffer.
The number of bytes copied into buffer is returned in the variable pCount. No null terminating
character is appended. If there is an error while trying to resolve the name, the function returns a
status code of invalid_sid. If the name was retrieved, but the buffer supplied by the caller is too
short, a status of buffer_too_short is returned. Otherwise, if the name was successfully resolved
and the buffer length is sufficient, a status of HSDA_OK is returned and the name is copied into
the user-supplied buffer.
HsdaStatusType HsdaStartLogging(HsdaSidType * pSidList, UINT32 * pCount,
HsdaSessionIdType * ID) Identifies a list of algorithms, by SID to collect data from. pSidList
points to the list of SIDs and pCount indicates the number of items in the list. Connection threads
are started on originating drop pairs. One application may have at most 10 connection sets to
drops originating SIDs. Returns HSDA_OK and sets session ID (a positive integer number) if
successful. If any of the SIDs is an invalid collection point (point that is not a valid BUFFER
algorithm LC record), pSidList will contain the list of invalid points, pCount will indicate how many
are in the list and the invalid_sid bit is set in the returned status in this case the communication
is not started. If the function is being called more than 10 times in one application, without closing
connections, then the function returns a status code with the max_connections bit set and the
communication is not started.
HsdaStatusType HsdaData(HsdaSessionIdType ID, HsdaEventType * pEventList, UINT32 *
pCount, BOOLEAN * pMore) Puts any received events, for a given session ID, into pEventList
and puts the number of written entries into pCount. To prevent overflow, the caller places the
maximum number of events that can be returned into pCount. Returns HSDA_OK if no problems
occurred. Returns a status with the invalid_id bit set if session with a given ID was not found. If
there were problems with the connection to any drop, then the drop_unavailable bit is set (for
example, a maximum number of connections to certain drops have been exceeded or there is a
connection problem). If there were problems with getting events for any point (for example, the
BUFFER algorithm point is missing) then the point_unavailable bit is set. If more events exist,
pMore is set to TRUE. The function tries to get as much data as possible, even if there were
problems with the connection to any drop or any point defined for the session was unavailable.

REF_1100

103

5.21 BUFFER
HsdaStatusType HsdaDiagDrops(HsdaSessionIdType ID, HsdaDropDiagType *
pDropDiagList, UINT32 * pCount) Puts drop connection diagnostics (for given session ID) for
all drops into pDropDiagList and puts the number of entries into pCount. To prevent overflow, the
caller places the maximum number of drop connection diagnostics that can be returned into
pCount. Returns a status with the invalid_id bit set if the session with the given ID was not found.
If more drops are defined than what are defined in pCount, then the buffer_too_short bit is set in
the return status. Returns HSDA_OK if no problems occurred. Possible types of drop connection
statuses are:
1. HSDA_CONN_CONNECTED connection to drop is active.
2. HSDA_CONN_DROP_UNAVAILABLE communication to drop could not be established (it
will be recreated as soon as possible).
3. HSDA_CONN_MAX_CLIENTS_EXCEEDED drop reported that it has the maximum
connections opened (the connection will be recreated as soon as possible).
4. HSDA_CONN_BACKUP_NOT_READY drop is in backup and did not receive a list of SIDs
for the connection from its partner.
5. HSDA_CONN_CONNECTING reconnecting to the drop.
6. HSDA_UNSUPPORTED_PROTOCOL_VERSION protocol version mismatch between drop
and station or drop responded in unexpected way.
7. HSDA_CONN_UNKNOWN initial state of connection to certain drop no connection to the
drop has been attempted.
Additionally, the drop diagnostic information includes the number of processed data frames, lost
network frames, a flag indicating whether the drop is active or in standby, and a flag indicating
whether an overflow occurred in the local Windows-side event buffers.
HsdaStatusType HsdaDiagSids(HsdaSessionIdType ID, HsdaSidDiagType * pSidDiagList,
UINT32 * pCount) Puts SID diagnostics (for given session ID) of all defined SIDs for the
session into pSidDiagList and puts the number of entries into pCount. To prevent overflow, the
caller places the maximum number of SID diagnostics that can be returned into pCount. Returns
with the invalid_id bit set if the session with a given ID was not found. If more SIDs are defined
than are in pCount, then the maximum possible amount of data is received and the
buffer_too_short bit is set in the returned status. Returns HSDA_OK if no problems occurred.
Possible point error types are:
1. HSDA_SID_OK There is no problem with receiving data for the point.
2. HSDA_SID_USED There is already another connection on the originating drop that uses
the point (this is for avoiding the problem that some events for the point are received by one
application and some by another one). The SID is still added to the list of SIDs on the drop,
but is always recognized as already used, even if the situation changes and it is not used by
any other application connected to the drop.
3. HSDA_SID_NOT_FOUND The given SID was not found on the active Controller.
4. HSDA_SID_DROP_UNREACHABLE No connection to originating drop.

104

REF_1100

5.21 BUFFER
HsdaStatusType HsdaResetStatisticalAttribute(HsdaSessionIdType ID,
HsdaStatisticalAttributeIdType attributeId) - Resets the value of the attribute identified by
attributeId for all drops in the session whose identifier is equal to ID. The statistical attributes
which can be reset include the buffer event overflow flag, number of processed data frames, and
number of lost data frames.
HsdaStatusType HsdaStopLogging(HsdaSessionIdType ID) Ends logging of the algorithms
associated with a given session ID and closes all of the associated connections. ID is no longer
valid at this point.
HsdaStatusType HsdaShutdown() Cleans up HsdaAPI internals.
API Responsibilities
The HSDA Windows API is responsible for maintaining a connection to the HSDA servers,
automatic retrieval of HSDA event data from the network, detecting communication
failures/delays, and re-establishing the connection. For the purpose of keeping track of the
connection state, the API periodically checks for incoming messages (data, diagnostic, or
heartbeat) from each server. If no data is received over an extended period of time, a Start
Logging request is resent to the server. Once the server has successfully processed the Start
Logging request, it starts to periodically send HSDA event data over the network. No explicit 'Get
Data' request is sent from the client to the server, which reduces network traffic. The events
obtained from the network are stored in internal data buffers on the workstation side, for later
retrieval by the client using the HsdaData call.
Connections to drops are not shared between HSDA sessions. Each HSDA session has its own
connection to each drop from which it receives data.
Ovation Station and Controller communication
All communication between the Ovation Station and the Ovation Controller is performed using the
UDP protocol. If the Windows firewall is turned on, you must create an exception for the end
application. On the Ovation Controller, the HSDA task listens on port 4599 for connections from
the Ovation Station. The active (in control) Controller initiates a connection to the backup
Controller. The backup Controller listens on port 4678 for HSDA connections from the active
Controller. The active Controller tries to establish the connection to its partner once a second. The
active Controller also checks if the number of connections is less than the maximum number of
connections when a new connection attempt is made.
UDP Protocol Retransmission Mechanism

The UDP version of HSDA makes use of two mechanisms to provide limited retransmission
capability.
The first mechanism assigns sequence numbers to UDP frames containing HSDA event
data. This enables the workstation API to determine whether a given received packet is a
duplicate or not.
The second mechanism buffers the data frames on the Controller side in a dedicated
queue. After a data frame is sent from the Controller, it is appended to the queue. If the
workstation does not acknowledge reception of this frame within a fixed time (currently
500 ms), the frame is retransmitted. There is a fixed amount of frame buffers available
(currently 200). If there are no free buffers and a frame needs to be sent out, the oldest
frame buffer (the one which was added to the queue the earliest) is used.

REF_1100

105

5.22 CALCBLOCK

5.22 CALCBLOCK
Description
The CALCBLOCK algorithm is designed to allow you to solve complex mathematical equations
within a control sheet. The CALCBLOCK algorithm supports any operation from the following list.
For more complex equations, CALCBLOCK algorithms can be cascaded together. Logical
operations are supported by the CALCBLOCKD algorithm (see page 114).
Each CALCBLOCK algorithm can support up to 18 inputs and 10 floating point constants.
Each CALCBLOCK algorithm can support up to 15 operations (in any combination). Each
operator has two arguments.
The intermediate result of each operation is stored in the Real Fields (1-15) of the algorithm
record. These intermediate results display in the tuning window of the monitor graphic and can
be used by the user to debug a calculation.
The result of the defined calculation is stored in the OUT point. If an invalid number (for example,
divide by zero, 1n (negative number), infinity, and so forth), occurs, the VALID output is set to
logical FALSE. If the calculation does not result in an invalid number, the VALID output is set to
logical TRUE.
The QBAD parameter is initialized by the user to indicate whether the OUT point should be set to
bad quality if an invalid number is calculated. The default value is YES which sets the output to
bad quality if an invalid number is encountered.
The real constant fields are the only tunable fields in the algorithm. All editing must be performed
via the Control Builder.
The optional ENBL input allows the algorithm to be conditionally executed. If the input is
connected, the calculation is carried out only if the ENBL input is TRUE. If the ENBL input is
FALSE, the calculation is not not performed, and the output is set to the previous value.
If the ENBL input is not connected, then there is no conditional execution, and the calculation is
performed each execution loop.
CALCBLOCK operations

106

M ATHEM ATICAL

STAND ARD

SCIENTIFIC

Add

(a + b)

*Square Root

(sqrt(a))

*Cosine

(Cos (a))

Subtract

(a - b)

*Reciprocal

(recip(a))

*Sine

(Sin (a))

Multiply

(a * b)

Max

(max (a,b))

*Tangent

(Tan (a))

Divide

(a / b)

Min

(min (a,b))

*Arccos

(arccos (a))

Power

(a^b)

*Negate

(neg (a))

*Arcsin

(arcsin (a))

*Square

(square(a))

Remain

(remain (a,b))

*Arctan

(arctan (a))

*Cube

(cube(a))

*Round

(round a)

*Natural Log

(Ln (a))

*Truncate

(trunc a)

*Log base 10

(log10(a))

REF_1100

5.22 CALCBLOCK

M ATHEM ATICAL

STAND ARD
*Absolute value

SCIENTIFIC
(abs a)

*Antilog

(antilog (a))

*Exp

(exp(a))

(*) = Unary Operator (Takes only one argument.)

Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Byte

Data Init.

Optional

46

QBAD

Y5-Byte

Data Init

Optional

YES

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram Number

Bad Quality on Invalid


Number

YES = Set output to bad


quality
NO = Do not set output to
bad quality
OPR1

X0-Byte

Variable

Required

Operand #1

OPR2

X1-Byte

Variable

Optional

Operand #2

REF_1100

107

5.22 CALCBLOCK

108

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OPR3

X2-Byte

Variable

Optional

Operand #3

OPR4

X3-Byte

Variable

Optional

Operand #4

OPR5

X4-Byte

Variable

Optional

Operand #5

OPR6

X5-Byte

Variable

Optional

Operand #6

OPR7

X6-Byte

Variable

Optional

Operand #7

OPR8

X7-Byte

Variable

Optional

Operand #8

OPR9

X8-Byte

Variable

Optional

Operand #9

OP10

X9-Byte

Variable

Optional

Operand #10

OP11

Y0-Byte

Variable

Optional

Operand #11

OP12

Y1-Byte

Variable

Optional

Operand #12

OP13

Y2-Byte

Variable

Optional

Operand #13

OP14

Y3-Byte

Variable

Optional

Operand #14

OP15

Y4-Byte

Variable

Optional

Operand #15

ARG1

G0-Integer

Variable

Required

Argument #1

ARG2

G1-Integer

Variable

Optional

Argument #2

ARG3

G2-Integer

Variable

Optional

Argument #3

ARG4

G3-Integer

Variable

Optional

Argument #4

ARG5

G4-Integer

Variable

Optional

Argument #5

ARG6

G5-Integer

Variable

Optional

Argument #6

ARG7

G6-Integer

Variable

Optional

Argument #7

ARG8

G7-Integer

Variable

Optional

Argument #8

ARG9

G8-Integer

Variable

Optional

Argument #9

AR10

G9-Integer

Variable

Optional

Argument #10

AR11

B0-Integer

Variable

Optional

Argument #11

AR12

B1-Integer

Variable

Optional

Argument #12

AR13

B2-Integer

Variable

Optional

Argument #13

AR14

YU-Integer

Variable

Optional

Argument #14

AR15

B4-Integer

Variable

Optional

Argument #15

AR16

B5-Integer

Variable

Optional

Argument #16

AR17

B6-Integer

Variable

Optional

Argument #17

AR18

B7-Integer

Variable

Optional

Argument #18

AR19

B8-Integer

Variable

Optional

Argument #19

AR20

B9-Integer

Variable

Optional

Argument #20

AR21

C0-Integer

Variable

Optional

Argument #21

AR22

C1-Integer

Variable

Optional

Argument #22

REF_1100

5.22 CALCBLOCK

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

AR23

C2-Integer

Variable

AR24

C3-Integer

AR25

Optional

Argument #23

Variable

Optional

Argument #24

C4-Integer

Variable

Optional

Argument #25

AR26

C5-Integer

Variable

Optional

Argument #26

AR27

C6-Integer

Variable

Optional

Argument #27

AR28

C7-Integer

Variable

Optional

Argument #28

AR29

C8-Integer

Variable

Optional

Argument #29

AR30

YT-Integer

Variable

Optional

Argument #30

RES1

R1-Real

Variable

Result of operation #1

RES2

R2-Real

Variable

Result of operation #2

RES3

R3-Real

Variable

Result of operation #3

RES4

R4-Real

Variable

Result of operation #4

RES5

R5-Real

Variable

Result of operation #5

RES6

R6-Real

Variable

Result of operation #6

RES7

R7-Real

Variable

Result of operation #7

RES8

R8-Real

Variable

Result of operation #8

RES9

R9-Real

Variable

Result of operation #9

RE10

S1-Real

Variable

Result of operation #10

RE11

S2-Real

Variable

Result of operation #11

RE12

S3-Real

Variable

Result of operation #12

RE13

S4-Real

Variable

Result of operation #13

RE14

S5-Real

Variable

Result of operation #14

RE15

S6-Real

Variable

Result of operation #15

CON1

S7-Real

Tuning
Constant

Optional

Constant 1

CON2

S8-Real

Tuning
Constant

Optional

Constant 2

CON3

S9-Real

Tuning
Constant

Optional

Constant 3

CON4

T1-Real

Tuning
Constant

Optional

Constant 4

CON5

T2-Real

Tuning
Constant

Optional

Constant 5

CON6

T3-Real

Tuning
Constant

Optional

Constant 6

CON7

T4-Real

Tuning
Constant

Optional

Constant 7

REF_1100

MIN.
POINT
RECORD

109

5.22 CALCBLOCK

110

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

CON8

T5-Real

Tuning
Constant

Optional

Constant 8

CON9

T6-Real

Tuning
Constant

Optional

Constant 9

CO10

T7-Real

Tuning
Constant

Optional

Constant 10

ENBL

Variable

Optional

Enable Calculations

LD

IN1

Variable

Required

Input 1

LA

IN2

Variable

Optional

Input 2

LA

IN3

Variable

Optional

Input 3

LA

IN4

Variable

Optional

Input 4

LA

IN5

Variable

Optional

Input 5

LA

IN6

Variable

Optional

Input 6

LA

IN7

Variable

Optional

Input 7

LA

IN8

Variable

Optional

Input 8

LA

IN9

Variable

Optional

Input 9

LA

IN10

Variable

Optional

Input 10

LA

IN11

Variable

Optional

Input 11

LA

IN12

Variable

Optional

Input 12

LA

IN13

Variable

Optional

Input 13

LA

IN14

Variable

Optional

Input 14

LA

IN15

Variable

Optional

Input 15

LA

IN16

Variable

Optional

Input 16

LA

IN17

Variable

Optional

Input 17

LA

IN18

Variable

Optional

Input 18

LA

OUT

Variable

Required

Calculation result value

LA

VALI

Variable

Optional

Valid output flag

LD

REF_1100

5.22 CALCBLOCK

Example 1
The following example illustrates a single calculation.

ALGORITHM
P ARAM ETER

VALUE

STEP SOLUTION

IN1

Not applicable

ENBL

SIG1

Not applicable

CON1

459.67

Not applicable

CON2

1164.83

Not applicable

OPR1

RES1 = IN1 + CON1

OPR2

RES2 = RES1 / CON2

OUT

Y = RES2

VALI

SIG2

Not applicable

Example 2
The following example illustrates a multiple calculation.

REF_1100

111

5.22 CALCBLOCK
This calculation is divided into two parts using two CALCBLOCK algorithms as follows:

CALCBLOCK #1 solves equation:


2

(-2.0296177 + 0.33158207Y + 1.7158422Y + 6.2354116Y - 14.042987Y + 7.3749399Y )

ALGORITHM
P ARAM ETER

112

VALUE

INTERMEDI ATE STEP

STEP SOLUTION

IN1

Not applicable

Not applicable

ENBL

SIG1

Not applicable

Not applicable

CON1

2.0296177

Not applicable

Not applicable

CON2

0.33158207

Not applicable

Not applicable

CON3

1.7158422

Not applicable

Not applicable

CON4

6.2354116

Not applicable

Not applicable

CON5

14.042987

Not applicable

Not applicable

CON6

7.3749377

Not applicable

Not applicable

CON7

Not applicable

Not applicable

CON8

Not applicable

Not applicable

OPR1

power

RES1 = power (IN1, CON8)

OPR2

power

RES2 = power (IN1, CON7)

OPR3

cube

RES3 = cube (IN1)

OPR4

square

RES4 = square (IN1)

OPR5

RES5 = CON6 * RES1

7.374 * (Y )

OPR6

RES6 = CON5 * RES2

14.042 * (Y )

OPR7

RES7 = CON4 * RES3

6.235 * (Y )

4
3
2
5

REF_1100

5.22 CALCBLOCK

ALGORITHM
P ARAM ETER

VALUE

INTERMEDI ATE STEP

STEP SOLUTION
2

OPR8

RES8 = CON3 * RES4

1.715 * (Y )

OPR9

RES9 = CON9 * IN1

0.331 * Y

OP10

negative

RE10 = neg (CON1)

-2.029

OP11

RE11 = RE10 + RES9

(-2.029 + (0.331 * Y))

OP12

RE12 = RE11 + RES8

((-2.029 + (0.331 * Y)) + (1.715 *


2
(Y )))

OP13

RE13 = RE12 + RES7

((-2.029 + (0.331 * Y)) + (1.715 *


2
3
(Y )) + (6.235 * (Y )))

OP14

RE14 = RE13 - RES6

(((-2.029 + (0.331 * Y)) + (1.715 *


2
3
(Y )) + (6.235 * (Y )) - (14.042 *
4

(Y )))
OP15

RE15 = RE14 + RES5

((((-2.029 + (0.331 * Y)) + (1.715 *


2
3
(Y )) + (6.235 * (Y )) - (14.042 *
4

(Y ))) + (7.374 * (Y )))


OUT

OUT

OUT = RE15

Not applicable

VALI

VALI

Not applicable

Not applicable

CALCBLOCK #2 solves equation:


-5

(2.62068 x 10 / 0.000672) exp(OUT1)

ALGORITHM
P ARAM ETER

REF_1100

VALUE

INTERMEDI ATE STEP

STEP SOLUTION

IN1

OUT

Not applicable

Not applicable

ENBL

VALI

Not applicable

VALI signal from CALCBLOCK #1

CON1

0.0389982143

Not applicable

(2.62068 x 10

OPR1

exp

RES1 = exp (IN1)

(exp IN1)

OPR2

RES2 = CON1 * RES1

(0.0389982143 * (exp IN1))

OUT

OUT

OUT = RES2

Not applicable

VALI

VALI

Not applicable

Not applicable

-5

/ 0.000672)

113

5.23 CALCBLOCKD

5.23 CALCBLOCKD
Description
The CALCBLOCKD algorithm is the digital version of the CALCBLOCK algorithm (see page 106).
CALCBLOCKD can perform logical functions only. The list of functions is outlined in the following
table. For more complex calculations, CALCBLOCKD algorithms can be cascaded together.
LOGICAL
And

(a && b)

Nand

(a ^& b)

Or

(a || b)

Nor

(a ^| b)

Xor

(a xor b)

Not

(not a)

Each CALCBLOCKD algorithm can support up to 18 inputs and 10 floating point constants. Each
CALCBLOCKD algorithm can support up to 15 of the above operations (in any combination).
Each operator has two arguments.
The intermediate result of each operation is stored in the Real Fields (1-15) of the algorithm
record. These intermediate results display in the tuning window of the monitor graphic and can be
used by the user to debug a calculation. The result of the defined calculation is stored in the OUT
point. If an invalid calculation occurs, the VALID output is set to logical FALSE. If the calculation
does not result in an invalid number, the VALID output is set to logical TRUE.
The QBAD parameter is initialized by the user to indicate whether the OUT point should be set to
bad quality if an invalid number is calculated. The default value is YES which sets the output to
bad quality if an invalid number is encountered.
The real constant fields are the only tunable fields in the algorithm. All editing must be performed
via the Control Builder.
The optional ENBL input allows the algorithm to be conditionally executed. If the input is
connected, the calculation is carried out only if the ENBL input is TRUE. If the ENBL input is
FALSE, the calculation is not be performed, and the output is set to the previous value. If the
ENBL input is not connected, then there is no conditional execution, and the calculation is
performed each execution loop.

114

REF_1100

5.23 CALCBLOCKD
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Byte

Data Init.

OPR1

X0-Byte

OPR2

Optional

46

Tuning Diagram
Number

Variable

Required

Operand #1

X1-Byte

Variable

Optional

Operand #2

OPR3

X2-Byte

Variable

Optional

Operand #3

OPR4

X3-Byte

Variable

Optional

Operand #4

OPR5

X4-Byte

Variable

Optional

Operand #5

OPR6

X5-Byte

Variable

Optional

Operand #6

OPR7

X6-Byte

Variable

Optional

Operand #7

OPR8

X7-Byte

Variable

Optional

Operand #8

OPR9

X8-Byte

Variable

Optional

Operand #9

OP10

X9-Byte

Variable

Optional

Operand #10

OP11

Y0-Byte

Variable

Optional

Operand #11

REF_1100

MIN.
POINT
RECORD

115

5.23 CALCBLOCKD

116

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OP12

Y1-Byte

Variable

Optional

Operand #12

OP13

Y2-Byte

Variable

Optional

Operand #13

OP14

Y3-Byte

Variable

Optional

Operand #14

OP15

Y4-Byte

Variable

Optional

Operand #15

ARG1

G0-Integer

Variable

Required

Argument #1

ARG2

G1-Integer

Variable

Optional

Argument #2

ARG3

G2-Integer

Variable

Optional

Argument #3

ARG4

G3-Integer

Variable

Optional

Argument #4

ARG5

G4-Integer

Variable

Optional

Argument #5

ARG6

G5-Integer

Variable

Optional

Argument #6

ARG7

G6-Integer

Variable

Optional

Argument #7

ARG8

G7-Integer

Variable

Optional

Argument #8

ARG9

G8-Integer

Variable

Optional

Argument #9

AR10

G9-Integer

Variable

Optional

Argument #10

AR11

B0-Integer

Variable

Optional

Argument #11

AR12

B1-Integer

Variable

Optional

Argument #12

AR13

B2-Integer

Variable

Optional

Argument #13

AR14

YU-Integer

Variable

Optional

Argument #14

AR15

B4-Integer

Variable

Optional

Argument #15

AR16

B5-Integer

Variable

Optional

Argument #16

AR17

B6-Integer

Variable

Optional

Argument #17

AR18

B7-Integer

Variable

Optional

Argument #18

AR19

B8-Integer

Variable

Optional

Argument #19

AR20

B9-Integer

Variable

Optional

Argument #20

AR21

C0-Integer

Variable

Optional

Argument #21

AR22

C1-Integer

Variable

Optional

Argument #22

AR23

C2-Integer

Variable

Optional

Argument #23

AR24

C3-Integer

Variable

Optional

Argument #24

AR25

C4-Integer

Variable

Optional

Argument #25

AR26

C5-Integer

Variable

Optional

Argument #26

AR27

C6-Integer

Variable

Optional

Argument #27

AR28

C7-Integer

Variable

Optional

Argument #28

AR29

C8-Integer

Variable

Optional

Argument #29

AR30

YT-Integer

Variable

Optional

Argument #30

REF_1100

5.23 CALCBLOCKD

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

RES1

R1-Real

RES2

Variable

Result of operation
#1

R2-Real

Variable

Result of operation
#2

RES3

R3-Real

Variable

Result of operation
#3

RES4

R4-Real

Variable

Result of operation
#4

RES5

R5-Real

Variable

Result of operation
#5

RES6

R6-Real

Variable

Result of operation
#6

RES7

R7-Real

Variable

Result of operation
#7

RES8

R8-Real

Variable

Result of operation
#8

RES9

R9-Real

Variable

Result of operation
#9

RE10

S1-Real

Variable

Result of operation
#10

RE11

S2-Real

Variable

Result of operation
#11

RE12

S3-Real

Variable

Result of operation
#12

RE13

S4-Real

Variable

Result of operation
#13

RE14

S5-Real

Variable

Result of operation
#14

RE15

S6-Real

Variable

Result of operation
#15

CON1

S7-Real

Tuning
Constant

Optional

Constant 1

CON2

S8-Real

Tuning
Constant

Optional

Constant 2

CON3

S9-Real

Tuning
Constant

Optional

Constant 3

CON4

T1-Real

Tuning
Constant

Optional

Constant 4

CON5

T2-Real

Tuning
Constant

Optional

Constant 5

CON6

T3-Real

Tuning
Constant

Optional

Constant 6

REF_1100

DESCRIPTION

MIN.
POINT
RECORD

117

5.23 CALCBLOCKD

118

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

CON7

T4-Real

Tuning
Constant

Optional

Constant 7

CON8

T5-Real

Tuning
Constant

Optional

Constant 8

CON9

T6-Real

Tuning
Constant

Optional

Constant 9

CO10

T7-Real

Tuning
Constant

Optional

Constant 10

ENBL

Variable

Optional

Enable Calculations

LD

IN1

Variable

Required

Input 1

LP

IN2

Variable

Optional

Input 2

LP

IN3

Variable

Optional

Input 3

LP

IN4

Variable

Optional

Input 4

LP

IN5

Variable

Optional

Input 5

LP

IN6

Variable

Optional

Input 6

LP

IN7

Variable

Optional

Input 7

LP

IN8

Variable

Optional

Input 8

LP

IN9

Variable

Optional

Input 9

LP

IN10

Variable

Optional

Input 10

LP

IN11

Variable

Optional

Input 11

LP

IN12

Variable

Optional

Input 12

LP

IN13

Variable

Optional

Input 13

LP

IN14

Variable

Optional

Input 14

LP

IN15

Variable

Optional

Input 15

LP

IN16

Variable

Optional

Input 16

LP

IN17

Variable

Optional

Input 17

LP

IN18

Variable

Optional

Input 18

LP

OUT

Variable

Required

Calculation result
value

LP

VALI

Variable

Optional

Valid output flag

LD

REF_1100

5.23 CALCBLOCKD
Example
The following example illustrates a single calculation:
A = NOT(IN1) && (IN2 XOR IN3)

ALGORITHM P ARAM ETER

REF_1100

VALUE

STEP SOLUTION

IN1

I1

Not applicable

IN2

I2

Not applicable

IN3

I3

Not applicable

ENBL

SIG1

Not applicable

OPR1

NOT

RES1 = not(IN1)

OPR2

XOR

RES2 = xor(IN2, IN3)

OPR3

AND

RES3 = and(RES1, RES2)

OUT

VALI

SIG2

A = RES3
Not applicable

119

5.24 COMPARE

5.24 COMPARE
Description
The COMPARE algorithm compares the value of IN1 as compared with the value of the IN2, and
the appropriate output is set TRUE.
Invalid Real Numbers
Analog input values are checked for invalid real numbers. If the input value is invalid, the output
points are set to FALSE.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

120

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input 1 (analog)

LA

IN2

Variable

Required

Input 2 (analog)

LA

OUT

Variable

Required

IN1 equals IN2


(digital)

LD

OUTG

Variable

Required

IN1 Greater than IN2


(digital)

LD

OUTL

Variable

Required

IN1 Less than IN2


(digital)

LD

ENBL

Input

Optional

When this input is


true, IN1 is compared
to IN2, and the
appropriate output is
set TRUE.

LD

REF_1100

5.25 COSINE

5.25 COSINE
Description
The COSINE algorithm performs the mathematical cosine function. COSINE has one input and
one output analog point. Each time the algorithm is executed, if the output is on scan, it is set to
the COSINE of the input. The input to this algorithm is in radians. If an input is only available in
degrees, multiply it by 0.01745329 to convert to radians.
Invalid Real Numbers and Quality
Analog input values are checked for invalid real numbers. If the input value is invalid, the value of
the output is invalid and its quality is set to BAD. If the input is valid, the quality of the input is
propagated to the output.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function
OUT=COSINE(IN1)

REF_1100

121

5.26 COUNTER

5.26 COUNTER
Description
The COUNTER algorithm counts up or down based on the input DIRECTION for the direction to
count. If DIRECTION (DRCT) is INC (one), the counter increments, otherwise it decrements.
While the ENABLE (ENBL) is TRUE, the count increments or decrements by one for each scan
that the IN1 input is TRUE.
If the COUNTER increments, the ACTUAL (ACT) continues to increment even if it is greater than
the TARGET (TARG). If the value stored in ACT reaches the maximum value (16,777,216), it
remains unchanged. The OUT is set TRUE when ACT is equal to or greater than TARG.
If the COUNTER decrements, it starts decrementing from the TARGET value. If the value stored
in ACT reaches the minimum value (-16,777,216), it disregards the IN1 input and remains at the
minimum value. The OUT is set TRUE when ACT is less than or equal to zero.
If either TARG or ACT is invalid, no operation occurs and OUT is set to FALSE. If ENBL is
FALSE, then ACT is set to zero when the COUNTER algorithm is configured to count up or set to
preset.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data

Required

Tuning Diagram
Number

Init

MIN.
POINT
RECORD
-

IN1

Variable

Required

Start Input Digital

LD, LP

ENBL

Variable

Required

Enable Input Digital

LD, LP

Data Init

Required

Count Direction:

DRCT

X1-Byte

DEC = Decrement
INC = Increment

122

*TARG

R1-Real

Selectable

Required

0.0

Count Target
Number

LA

*ACT

R2-Real

Selectable

Required

0.0

Actual Count Output

LA

REF_1100

5.26 COUNTER

N AM E

OUT

LC ALG.
RECORD
FIELD
-

TYPE

REQUIRED/
OPTIONAL

Variable

Required

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Count Complete
Output

LD, LP

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

Example

Function

REF_1100

123

5.27 DBEQUALS

5.27 DBEQUALS
Description
The DBEQUALS high/low comparator algorithm monitors two analog input values. If the absolute
value of the difference between the signals exceeds the deadband value, the digital output is set
TRUE. If the absolute value of the difference between the signals is less than the absolute value
of the difference between DBND and RTRN, then the output is set FALSE.
Invalid Real Numbers and Quality
Both analog input values are checked for invalid real numbers. If one of the input values is invalid,
the value of the output is invalid and its quality is set to BAD. If all the inputs are valid, the worse
quality among the inputs is propagated to the output.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

124

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init.

Required

23

Tuning Diagram
Number

DBND

R1-Real

Tuning
Constant

Required

Deadband

RTRN

R2-Real

Tuning
Constant

Optional

Deadband return
delta parameter

IN1

Variable

Required

Input (analog)

LA

IN2

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (digital)

LD, LP

REF_1100

5.27 DBEQUALS
Function
TEMP = IN1 - IN2
IF ABS(TEMP) > DBND
THEN OUT = TRUE
IF OUT = TRUE
THEN IF ABS(TEMP) <ABS(DBND - RTRN)
THEN OUT = FALSE
where:
TEMP = local, temporary, real variable

REF_1100

125

5.28 DEVICE

5.28 DEVICE
Description
The DEVICE algorithm combines the commands to open/close/stop or start/stop a piece of
equipment with feedback signals indicating the command was accomplished. Devices allow
controlled access of the equipment they own and simplify the operation of the equipment. For
example, when an operator wants to close a large motor-driven valve, he could watch the
open/close verify contact signals and manually toggle the close contact output until the
closed-confirm is received or an excessive amount of time has past. On the other hand, if the
Controller takes over for the operator, the command is simpler (that is, the Controller closes the
valve). This algorithm provides digital outputs that reflect how the I/O outputs of the device are
being maintained and the different status/mode conditions of the device.
The DEVICE algorithm responds to the following signal combinations:

One digital output and no feedback.

One digital output and one digital feedback.

Two digital outputs and two digital feedbacks.

Two digital outputs and one feedback.

Three digital outputs and two feedbacks.

One Digital Output and No Feedback


With one output and no feedback, the DEVICE algorithm sets the device to a defined state (on,
off, start, stop, open, close) when commanded.

126

REF_1100

5.28 DEVICE
One Digital Output and One Digital Feedback
With one output and one feedback, the DEVICE algorithm can set the output to a defined state,
set the In Transition bit (A2 field of bit 1 of the device record), and then monitor the input. If the
input's state does not match the output state within a user- specified amount of time, the device
indicates a failed operation has occurred. If the feedback indicates the desired state is reached
within the user-specified time, the device sets its current state field to the appropriate value. In
either case, the In Transition bit resets at the end of the operation.

REF_1100

127

5.28 DEVICE
Two Digital Outputs and Two Digital Feedbacks
With two digital outputs and two digital feedbacks, the DEVICE algorithm can set the appropriate
output to 1 or ON and wait for the appropriate feedback to be true. When the appropriate
feedback indicates true, the device sets its current state field to the appropriate state. If the
feedback does not indicate the appropriate state is reached within the user-specified time, the
device status display indicates a failed operation.

128

REF_1100

5.28 DEVICE
Two Digital Outputs and One Digital Feedback
With two digital outputs and one feedback, the DEVICE algorithm can set the appropriate output
to 1 or ON and wait for the feedback to go to the desired state. When the feedback indicates the
new state, the device sets its current state field to the appropriate state. If the feedback does not
indicate the appropriate state was reached within the user-specified time, the device indicates a
failed operation.

REF_1100

129

5.28 DEVICE
Three Digital Outputs and Two Digital Feedbacks
With three outputs and two feedbacks, the algorithm can set the appropriate output to 1
according to the OPEN/CLOSE, START/STOP, or STOP TRAVEL command requested. If the
request is an Open or Close command, the feedbacks are monitored to see if the new state is
reached. When the feedbacks indicate the new state, the device's current state bit is updated to
the appropriate state. If the feedbacks do not indicate the appropriate state within the
user-specified time, the device indicates a failed operation. If the command is a Stop Operation
request, the algorithm writes a 1 to the Stop Travel output and indicates that the device is
stopped.

130

REF_1100

5.28 DEVICE
Control Operation
If the state of the I/O is indeterminate (that is, when both input status bits are equal to 1, or both
are equal to zero and the device is not being commanded to another state), the Sensor Failure bit
(bits 2 and 3 of the 1W field in the DVCE point) is set. Note, that once a device is commanded to
another state, the In Transition status is set true as soon as the algorithm starts driving the
device to the commanded state. The In Transition status is reset when the device feedback
indicates the new state, and the operation is successful. If the operation fails, and the device
indicates it is neither open nor closed (both bits of the feedbacks are zero or one), the In
Transition status remains set and the Input Sensor Failure bit is not set. However, the Operation
Failed bit (bit 2 of the A2 field of the DVCE point) is set.
The device with two feedbacks may also be configured to display a Failure to Respond status. If
you configure the device to have a response time, the failure occurs if both feedbacks are not at a
zero (clear) state within the defined response time. If a Failure to Respond occurs, there is no
Operation Failure since the algorithm waits for a new command to process following the
response failure.
In the event of Failure to Respond, OUTPUT1, OUTPUT2, and OUTPUT3 all equal zero. In this
case, OUTPUT1 represents OPEN/START/ON bit, OUTPUT2 represents CLOSE/STOP/OFF bit,
and OUTPUT3 represents STOP (TRAVEL) bit.
In the event of Failure to Operate, OUTPUT1, OUTPUT2, and OUTPUT3 equal zero, as if
Failure to Respond. After any Failure to Operate or Failure to Respond, the OUTPUTs are
always zero.
The digital inputs and outputs used by the DEVICE algorithm can either be signals read from or
written to I/O cards, other digital process points contained in the system, or a combination of the
two.
Whenever a device experiences a failed operation (or response failure), it may ignore additional
requests for state changes or it may continue servicing such requests, depending on how the
device is configured (bit 4 of MODE parameter). You may want a DEVICE algorithm to ignore
further requests after a piece of equipment has failed in order to prevent further damage to the
equipment. Regardless of how a device is configured, it services at least one request subsequent
to each change of operating mode (for example, Auto Mode to Manual Mode). If the device is
configured to ignore requests after a failure, it displays the status LOCKOUT when a failed
operation (or response failure) occurs.
Control Modes
A device is put into one of three modes by the operator by pressing the appropriate control key
(located on the Control Panel or Ovation Keyboard) or specified function key (located on a
standard keyboard). Note that the device must be configured to operate in that mode. Therefore,
the DEVICE has three modes of operation that can be adjusted during monitoring. These modes
are as follows:

AUTO

MANUAL

LOCAL

REF_1100

131

5.28 DEVICE

Auto Mode
Auto Mode allows the Controller application program to control the device through
user-programmed logic. The device cannot go into Auto mode unless one or both of the following
conditions are true:

The Auto Permissive bit is true.

The device is configured so that its default mode (bit 7 in MODE parameter) is Auto.

Once either of the above conditions is satisfied, and the device is not in Local mode, the device
can enter Auto mode if:

The operator presses the Auto mode request key.

An Emergency Override occurs and the device's default mode is Auto.

The Local Mode input goes false after being true, and the device's default mode is Auto.

The default mode is Auto, and the DEVICE algorithm is in its first pass.

The device exits Auto mode whenever one of the following happens:

The operator presses the Manual Mode Request key.

The operator Tags Out the device.

The Auto Permissive bit (bit 5 of the C5 field of the command word) goes False and the
default mode is not Auto mode (the device goes to Manual mode).

Local Mode is commanded through the optional LRE input.

Emergency Override occurs and the device's default mode is Manual (occurrence of an
override forces the mode to Manual).

The device may be configured (Bit 6 of MODE parameter) to go to Manual mode when a change
of state command is entered. If this is the case, pressing the following control keys causes the
device to go to Manual mode:

Start/Open/Trip.

Stop/Close/Reset.

Stop Travel (discontinue operation in progress).

When in Auto Mode, the DEVICE algorithm accepts commands from the digital process points
that are linked to the device through the DEVICE algorithm. Possible commands are:

132

Stop/Close/Reset.

Start/Open/Trip.

Stop Travel (discontinue operation in progress).

Emergency OPEN/START Override.

Emergency CLOSE/STOP Override.

REF_1100

5.28 DEVICE

Manual Mode
Manual Mode of operation allows the operator to control the device with the control keys. The
device goes into this mode when one of the following occurs:

The operator requests Manual mode by pressing the Manual Mode request key.

In Auto mode, the Auto Permissive bit (bit 5 of the C5 field of the command word) goes false
and the device default mode is not Auto.

Upon startup of the Controller, if the default mode of the device is Manual.

Occurrence of an Emergency Override and the default mode of the device is Manual, or in
Local mode, the hardware field input goes false and the default mode of the device is Manual.

The device may be configured to go to Manual mode when an Engineer Station or Operator
Station change of state command is entered. If this is the case, pressing the following control
keys causes the device to go to Manual mode:

Start/Open/Trip.

Stop/Close/Reset.

Stop Travel (discontinue operation in progress).

The device exits Manual mode whenever one of the following happens:

Local Mode is commanded through the optional LRE (reject to local) input.

The operator requests Auto Mode (and the Auto Permissive bit is set or Auto is the device's
default mode), or the operator requests the device to be Tagged-Out with the appropriate
control key.

When in Manual Mode, the DEVICE algorithm executes the Emergency Override to the device
only if the device is configured (see bit 0 in MODE parameter) so that the overrides have
precedence over the operator's commands.
Local Mode
Local Mode is the lowest level mode of operation for the device. A device can enter this mode
only if the following two conditions are met:

The device is configured to monitor the LRE input that indicates a local mode is active.

The LRE point is in the set (true) state.

When this point goes true, the device immediately goes into Local Mode and stays in this mode
until the following occurs:

The LRE point is reset (goes false).

As long as the LRE point is true, the device does not accept any commands from the Auto and
Manual modes. It does however, report the current state of the device. Device Trips, Sensor
Failures, and Failed Operations cannot be determined when in Local Mode; therefore, these
conditions are not checked for or reported when in Local Mode.
When the device goes into Local Mode, inputs are read and outputs are not energized; they are
left as they were when device went into Local Mode. When the device leaves the Local Mode, the
device goes to its default mode AUTO or MANUAL as defined by bit 7 in MODE parameter. If
input sensors cannot be determined (both = 0, or both = 1) and the device has not been
commanded to change state, all three outputs equal zero.

REF_1100

133

5.28 DEVICE
Mode Independent Commands
There are several commands that are requested with keys and are executed if the device is in
Auto or Manual mode. These commands are:

Set Override Failure flag (Disable Lockouts).

Clear Override Failure flag (Enable Lockouts).

Tag Out the Device.

Acknowledge Trip.

Auto mode request.

Manual mode request.

These commands are not accepted, however, if the device is in Local mode or is tagged-out.
Maintenance Modes
Tag Out
When in Tag Out Mode, the device ignores all commands except Remove Tag Out. The device
goes to its default mode when the Tag Out is removed.
Lock Out
A subset of the Tag Out Mode is the device LOCK OUT mode. Lock out occurs if the device is
configured (see bit 4 MODE parameter) to ignore subsequent commands to change state after an
operation fails. In other words, the device has only one opportunity to change state in a particular
mode. If the operation fails, the DEVICE algorithm does not accept another Open/Start or
Close/Stop command while locked out.
A device may be removed from Lock Out by any of the following actions:

Pressing the Auto or Manual mode request keys.

Setting the failure override flag (disabling lockouts) via the appropriate key.

Tagging out the device.

Control being transferred to Local mode (the LRE point goes true).

When returning from Lock Out, variables OUT1, OUT2, and OUT3 equal zero.
Change of State
In general, a change of state command in progress is continued until the device reaches the new
state or until a time out occurs. The following conditions cause an operation in progress to be
discontinued:

134

The device is Tagged Out, resulting in inputs being read and outputs not energized, left as
they were at the time of Lock Out.

The device goes to Local mode, resulting in inputs being read and outputs not being
energized, left as they were when device went to Local Mode

A Stop (discontinue operation) command is requested by the current control mode and an
Emergency Override is not in progress. If the device is in Manual mode, however, and it is
configured so the Emergency Overrides do not have priority over Manual commands, a
Manual Stop request overrides the Emergency command.

REF_1100

5.28 DEVICE
In order for a change of state command to be executed, its proper permissive must be true. For
example, a Manual Close/Stop command only executes if the Close/Stop permissive of the device
is true. The Emergency Override and Stop (discontinue operation) commands do not require any
permissive to be true in order to be executed.
The permissives of a device are set true on start-up and remain true unless the DEVICE algorithm
is used to update them.
You can set the amount of time that a device allows for the equipment to change state following a
command. You must specify the units of time (0.1 seconds, seconds, or minutes) to measure
transition time, and the maximum number of time units to get to the set and reset states. You can
also specify a time period (in loops) for the equipment to respond to a command.
For devices with feedback, you can also configure the amount of time that the DEVICE algorithm
sets the appropriate output ON. The following modes are supported:

Set output ON for a user-configured time period (less than the transition time), or until the
new state is reached, which ever occurs first. (Setting bit 1 of MODE parameter indicates this
mode.)

Set output ON for a user-configured time period (equal to the transition time) or until the new
state is reached, which ever occurs first. (Indicate this mode by setting bit 2 of the MODE
parameter.)

Maintain output ON continuously, until a new command is given. This mode also has a
time-out associated with it, but the pulsing continues after the time-out occurs. If the operation
fails (device does not reach the commanded state) the operation is flagged as a failure, and
the pulsing is discontinued until a new command is given. (This mode is indicated by bit 3 of
the MODE parameter.)

For the case where the device has only one output (no feedbacks), the output is set to ON (or
OFF) continuously depending on whichever command is requested. There are no time-outs for
this case.
A device always writes to its output(s) when a new change of state command occurs regardless
of the state of its input(s). If the device command is from other application logic, care should be
taken to ensure that the command is maintained or pulsed as needed.
The device continuously checks for change of state commands when it is not in the process of
executing one. The device executes a change of state command when it is first set ON. If the
command stays ON, the device treats it as a new command when it finishes executing the last
command. Since the device writes to its output(s) when a new command occurs, its output(s)
cycle continuously ON and OFF if the following are true:

A change of state command is ON and it matches the state of the device's input(s).

The device is configured to set its output(s) ON for a certain amount of time, then OFF.

Emergency Overrides
In addition to the change of state commands, in each of the operating modes there are two other
commands: Emergency Start/Open/Trip and Emergency Stop/Close/Reset.
These two commands are generated by external logic in the Controller and can act as emergency
overrides over all other commands, including Stop Travel.

REF_1100

135

5.28 DEVICE
Whenever either the Emergency Open, or Emergency Close input becomes true, the DEVICE
algorithm forces the device to its default state and attempts to get the device to the commanded
state. (If the DEVICE algorithm is not configured to ignore failures, the emergency command
executes only once.) If both emergency overrides are set at the same time, the device remains on
its present course of action. Any occurrence of an override forces the device to its default mode.
As long as either Emergency input is set, the DEVICE algorithm ignores all Auto commands to
drive the device. The device may also be configured to have the Emergency inputs override the
Manual commands or the Manual commands override the Emergency inputs. Upon removal of
the emergency override, the device returns to servicing commands of its default mode.
Note: Emergency overrides, like all other commands, are ignored when the device is tagged out
or in Local Mode.
Alarming
The DEVICE algorithm supports seven types of alarms. All of these alarms, except Trips, require
operator acknowledgment. The device conditions which can produce alarms are:

Failed Operations.

Failures to Respond.

Trips.

Alarm State.

Sensor Failures.

Emergency Overrides.

Attention (Trouble).

Failed Operations
If the Failed Operations alarm is configured, the DEVICE algorithm puts the device in alarm
whenever the equipment does not complete a change-of-state command (for example, if a valve
is commanded to open and it does not do so within the user-specified time). A Failed Operation
Alarm clears upon the next Open, Close, or Stop command to the device.
Failure to Respond
If the Failure to Respond alarm is configured, the DEVICE algorithm puts the device into alarm if
the feedbacks do not reflect an In Transition state within a user-specified number of loops. The
In Transition state must be that both feedbacks have a value of 0.
Trips
If Trip alarms are configured, the DEVICE algorithm puts the device into alarm whenever the
equipment unexpectedly changes state (for example, when a breaker trips open). A Trip Alarm
clears when you acknowledge the Trip by commanding the device to the Tripped state. Trip Alarm
returns do not require acknowledgment by the user.
Alarm State
The device can be configured to go into alarm based on a user-defined state. The alarm clears
only when the device returns to the non-alarmed state. These alarms must be acknowledged by
the user.

136

REF_1100

5.28 DEVICE
Sensor Failures
A Sensor Failure alarm is caused by either or both of the following conditions:

The device feedbacks are indeterminate (that is, both show a 00 or 11 status) and the device
is not in transition. This is an input sensor alarm.

The outputs do not reflect the value written to them (output sensor alarm).

Emergency Override
The Emergency Override alarm is generated any time an override occurs and the device is not at
the override state. For example, the occurrence of an Emergency Open would generate an alarm
if the device is Closed. If both override inputs happen to become true at the same time, an alarm
is generated regardless of the state of the device.
Attention
The Attention (Trouble) alarm is caused by different conditions depending on how the device is
configured. Currently, the standard DEVICE algorithm does not generate an ATTENTION alarm.
If the device is configured to alarm a combination of conditions, the points are put into alarm when
either one or more of the alarm conditions exist.
The following alarming options are available:

No Alarming.

Failed Operations, Sensor Failures, Trips, Response Failures, Attention conditions, and
Emergency Overrides.

Failed Operations, Sensor Failures, Trips, Response Failures, Attention conditions,


Emergency Overrides, and Alarm State.

Clearing Alarms
Upon Tagging Out, Scan Removing, or putting a device into Local mode, the following alarms are
cleared:

Failed Operation.

Failure to Respond.

Sensor Failures.

Trips.

Attention.

A State Alarm, however, is not cleared by any of the conditions mentioned above. It must be
cleared by commanding the device.
Tagging out or going to Local mode clears any Emergency Override present.
Device Status Reporting
The device record maintains information corresponding to the current status of a device.
Depending on the state of a device, its displayed status includes a combination of the following
conditions:

REF_1100

Current State.

137

5.28 DEVICE

In Transition.

Operation Failed.

Failure to Respond.

Tripped.

Stopped.

Emergency Close.

Emergency Open.

Current Mode.

Override Failure.

Scan Removed.

Alarm Checking Off.

Tagged Out.

Locked Out.

Quality.

The status information mentioned above comes from various flags (bits) in certain fields in the
packed point and algorithm record.
The A2 field of the Packed point (DVCE) has the following information:
A2 Field Bit Information

138

BIT

DESCRIPTION

Bit 0

Current State. This bit indicates the current state of the feedback signals. In case feedback
signals give conflicting data, the last known state is reported. When scan removed, the last
command state is reported.

Bit 1

In Transition. This bit indicates the device algorithm is currently in the process of trying to
change the state of its equipment. The bit is set true when the device starts to execute a
command. It is reset when the feedback signals indicate the operation is complete or the
operation has failed.

Bit 2

Operation Failed. This bit is set following any unsuccessful attempt to change the state of
the equipment. It remains set until the next attempt is made to change the state of the
equipment. Failed operation is not indicated if the device is scanned off.

Bit 3

Tripped. This bit is set any time the equipment changes state on its own, not by the
algorithm. It remains set until the Trip Acknowledge command is received. If it is not
acknowledged, no other change of state operations, in any mode, is processed. The tripped
bit is not set when the device is Tagged Out or Scanned Removed.

Bit 4

Stopped. This bit is set whenever the device is commanded to stop. The bit remains set until
the next attempt is made by the device to change the state of the equipment.

Bit 5

Emergency Close. This bit reflects the status of the override inputs to the device.

Bit 6

Emergency Open. This bit reflects the status of the override inputs to the device.

Bit 7

Last Commanded State. This bit reflects the last known state of the device.

Bit 8

Local Mode. This bit indicates that the device is in local mode.

Bit 9

Manual Mode. This bit indicates that the device is in manual mode.

REF_1100

5.28 DEVICE

BIT

DESCRIPTION

Bit 10

Auto Mode. This bit indicates that the device is in auto mode.

Bit 11

Reserved.

Bit 12

Attention. This bit indicates certain error conditions are present.

Bit 13

Failed to Respond. This bit indicates that the device did not respond to a command.

Bit 14

Locked Out. This bit indicates that the state of the device is locked out.

Bit 15

Tagged Out. This bit indicates that the state of the device is tagged out.

The C5 field in the device algorithm holds the command word. This command word is the
interface between a Controller and a device. The bits in the C5 field are defined in the following
table:
C5 Field Bit Information
BIT

DESCRIPTION

Bit 0

Emergency Close/Stop.

Bit 1

Emergency Open/Start.

Bit 2

Auto Close/Stop/Reset.

Bit 3

Auto Open/Start/Set.

Bit 4

Stop.

Bit 5

Auto Permissive.

Bit 6

Current State of Input 1 (Open/Start).

Bit 7

Current State of Input 2 (Close/Stop).

Bit 8

Current State of Input 3 (Stop).

Bit 9

Value currently being written to Output 1 (Open/Start).

Bit 10

Value currently being written to Output 2 (Close/Stop).

Bit 11

Value currently being written to Output 3 (Stop).

Bit 12

Close/Stop permissive.

Bit 13

Open/Start permissive.

Bit 14

Local Reject.

REF_1100

139

5.28 DEVICE
Setting Device Parameters
Alarming
The following fields in the Packed point (DVCE) must be set for alarming:
Alarming Parameters
TYPE

OF

AL ARMING

FIELDS

TO BE

SET

No Alarming

Set E0 and E1 to zero.

Operate, Sensor, Trips, Overrides and Attention

Set E0 and E1 to 0x386c.

Operate, Sensor, Trips, Overrides and Attention,


State Set(1)

Set E0 and E1 to 0x386d.

Operate, Sensor, Trips, Overrides and Attention,


State Set(0)

Set E0 to 0x386d and E1 to 0x386c.

The C4 field in the algorithm record defines the mode configuration. The bits in the C4 field are
defined in the following table:
C4 Field Bit Information
BIT

MODE

DESCRIPTION

Bit 0

Off

The emergency Open/Start and Close/Stop commands override


Auto commands.

On

The Emergency Open/Start and Close/Stop commands override


all other commands.

Bit 1 *

On

Set output 'ON' for a configured time period (less than the
time-out). If this bit is set, the algorithm maintains the
appropriate output for the number of loops in the Pulse Time or
until the operation is successful, whichever occurs first.

Bit 2 *

On

Set output 'ON' until a user-configured time-out (or the operation


is successful). The transition times for setting and resetting the
device are entered in the Set Time-out and Reset Time-out
fields.

Bit 3 *

On

Set output 'On' continuously until a new command is entered.

Bit 4

On

Disable lock-outs. If this bit is set, the device does not go into
Lock Out mode when a failed operation occurs.

Bit 5

On

Do not execute the STOP TRAVEL command.

Bit 6

Off

Manual Open/Close/Stop command force the device to Manual


mode.

On

Manual Open/Close/Stop commands are processed only it the


device is in Manual mode.

Off

Device default mode is Manual.

On

Device default mode is Auto.

Bit 7

140

REF_1100

5.28 DEVICE

* Bits 1, 2, and 3 are not meant to be used together. Only one of these bits should be used at a time.
Also, these options apply to START/OPEN and STOP/CLOSE commands only. The STOP TRAVEL
command uses Bit 3 regardless of what is selected.

The C7 field in the algorithm record defines the emergency Open/Close configuration. The bits in
the C7 field are defined in the following table:
C7 Field Bit Information
BIT

MODE

DESCRIPTION

Bit 0

Not Used

Not used.

Bit 1

Off

Place the DEVICE algorithm in Local mode when:


The LRE point is TRUE.
Bit 2 of the C7 field is 1 and the LRE is TRUE.

On

Place the DEVICE algorithm in Local mode when:


The LRE point is FALSE.
Bit 2 of the C7 field is 1 and the LRE is FALSE.

Off

The LOC point is used to indicate the device is in Local


mode.

On

The LRE point is used as a local mode request.

Off

The EMOP (Emergency Open) input is NOT inverted.

On

The EMOP (Emergency Open) input is inverted.

Off

The EMCL (Emergency Close) input is NOT inverted.

On

The EMCL (Emergency Close) input is inverted.

Off

The Trip Acknowledge action causes a command to the


output(s) based on the current feedback state.

On

The Trip Acknowledge action does NOT cause a command


to the output(s).

Off

The OPRM (Open Permissive) does NOT apply to the


EMOP (Emergency Open) input.

On

The OPRM (Open Permissive) does apply to the EMOP


(Emergency Open) input.

Off

The CPRM (Close Permissive) does NOT apply to the


EMCL (Emergency Close) input.

On

The CPRM (Close Permissive) does apply to the EMCL


(Emergency Close) input.

Bit 2

Bit 3

Bit 4

Bit 5

Bit 6

Bit 7

REF_1100

141

5.28 DEVICE

Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU -

Data Init

Required

121

Tuning diagram
number.

Data Init.

Required

20

Set time out


(maximum of 255 if
units are tenth of a
second or seconds.
Maximum of 100
minutes if units are
minutes).

Data Init.

Required

20

Reset time out


(maximum of 255 if
units are tenth of a
second or seconds.
Maximum of 100
minutes if units are
minutes).

Data Init.

Required

Mode information.

Data Init.

Required

Emergency
open/close.

Data Init.

Required

Pulse time.

Integer
SET

D2 Integer

RSET

YT Integer

MODE

C4 -

DESCRIPTION

MIN.
POINT
RECORD

Integer
EMRG

C7 Integer

PT

D4 Integer

142

REF_1100

5.28 DEVICE

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

TR

YP -

Data Init.

Required

Time response.

Data Init.

Required

Units time out. Value


time units:

Integer
TU

DO Integer

0 = tenth of a second
1 = seconds
2 = minutes
TYPE

C8 -

Data Init.

Required

Open/Close

Integer

Device type. The


choices are:

- Open/Close
- Start/Stop
OPRM

Variable

Optional

Input (digital); OPEN


PERMISSIVE,
allows
OPEN/START
commands to be
honored.

LD, LP

CPRM

Variable

Optional

Input (digital);
CLOSE
PERMISSIVE;
allows
CLOSE/STOP
commands to be
honored.

LD, LP

IN1

Variable

Optional

Input (digital);
feedback. If the
value is TRUE, the
device is OPEN/ON.

LD, LP

IN2

Variable

Optional

Input (digital);
feedback. If the
value is TRUE, the
device is
CLOSED/OFF.

LD, LP

IN3

Variable

Optional

Input (digital):

LD, LP

Auto mode request


DVCE point goes to
Auto mode when IN3
is TRUE, AUTP IS
TRUE.
LRE

Variable

Optional

Input (digital); Local


reject

LD, LP

When EMRG Bit 2 =


1, point is used as
the local mode
request.

REF_1100

143

5.28 DEVICE

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

AUTP

Variable

Optional

Input (digital); AUTO


PERMISSIVE;
allows the device to
operate in AUTO
mode.

LD, LP

STOP

Variable

Optional

Input (digital); AUTO


STOP TRAVEL
command.

LD, LP

OPEN

Variable

Optional

Input (digital); AUTO


OPEN/START
command.

LD, LP

CLOS

Variable

Optional

Input (digital); AUTO


CLOSE/STOP
command.

LD, LP

EMOP

Variable

Optional

Input (digital);
emergency
OPEN/START
command.

LD, LP

EMCL

Variable

Optional

Input (digital);
emergency
CLOSE/STOP
command.

LD, LP

DVCE

Variable

Required

Output device.

LP

OUT1

Variable

Optional

Output (digital);
TRUE when the
device is going to or
being kept at the
OPEN/START state.

LD, LP

OUT2

Variable

Optional

Output (digital);
TRUE when the
device is going to or
being kept at the
CLOSED/STOP
state.

LD, LP

OUT3

Variable

Optional

Output (digital);
TRUE when a device
operation has been
stopped.

LD, LP

LOC

Variable

Optional

Output (digital);

LD, LP

When EMRG Bit 2 =


0, LOC is set TRUE
when the device is
operating in Local
mode.
MAN

144

Variable

Optional

Output (digital);
TRUE if the device is
operating in Manual
mode.

LD, LP

REF_1100

5.28 DEVICE

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

AUTO

Variable

Optional

Output (digital);
TRUE if the device is
operating in Auto
mode.

LD, LP

OPFL

Variable

Optional

Output (digital);
TRUE if a device
operation failed or if
a failure to respond
occurred.

LD, LP

TRIP

Variable

Optional

Output (digital);
TRUE if the device
tripped (that is,
changed state
without a change
state command).

LD, LP

STAT

Variable

Optional

Output (digital);
current state of the
device.

LD, LP

1 = OPEN/ON
0 = CLOSED/OFF

REF_1100

145

5.29 DEVICESEQ

5.29 DEVICESEQ
Description
The DEVICESEQ algorithm provides an interface between control logic function and a
MASTERSEQ algorithm. In the most common application configuration, the logic control is utilized
to control a particular device. In this configuration, the MASERSEQ algorithm typically provides a
supervisory control function of multiple devices. Refer to the MASTERSEQ reference pages (see
page 289) for details on the operation of the MASTERSEQ algorithm.
The DEVICESEQ algorithm communicates with the associated MASTERSEQ algorithm via a
packed group point status point. The DEVICESEQ algorithm's interface to the control logic via
individual inputs and outputs. Refer to the template definition table for details on the algorithm
inputs, output and configuration parameters.
Functional Symbol

Details of Operation
The DEVICESEQ algorithm provides the MASTERSEQ with the status information of the
associated device. This status information is outlined in the following status information section.
The DEVICESEQ algorithm also transfers the value of the GO bit in the status point to the STRT
output. As long as the GO bit in the status point is TRUE, the associated device is considered to
be running.
The algorithm can also be configured to utilize an internal failure timer. This timer monitors the
amount of time that elapses while the device is running. The timer stops accumulating time when
either the PASS or FAIL input becomes TRUE. The elapsed time is compared to the value of the
TARG parameter each execution cycle of the algorithm.The internal timer expires when the
accumulated time becomes greater than or equal to the value of TARG parameter and is greater
than zero. If the failure timer is enabled anytime, the value of the TARG parameter is greater than
zero. If the failure timer is enabled, the accumulated time is always stored in the R3 field of the
algorithm. In addition, the accumulated time is also stored in the optional ACT output point.
The algorithm also incorporates an additional internal timer that stores the time that has elapsed
while the device was running. This timer value is stored in both the optional TIME output and the
R4 field of the algorithm record. This value is dependent of the internal failure timer and is always
updated whether the internal failure timer is utilized or not. The accumulated time in both timers is
calculated based on loop time.
During the first pass mode of the controller and when the RESET bit in the status point (MSTR) is
TRUE, the DEVICESEQ algorithm sets the elapsed time for both the step timer and the internal
failure timer to zero.

146

REF_1100

5.29 DEVICESEQ

Status Information
The DEVICESEQ algorithm provides the attached MASTERSEQ algorithm with the following
status information:

It provides an indication that the associated device is ready for a remote start. The device is
ready for remote start when the RDY input is TRUE. The value of the RDY input is then
transferred to the READY bit of the status point during each execution cycle of the algorithm.

It provides an indication that the associated device has failed. The device is failed when the
FAIL input is TRUE. The value of the FAIL input is transferred to the FAILED bit in the status
point during each execution cycle of the algorithm.

It provides an indication that the associated device has completed when the PASS input is
TRUE. The value of the PASS input is transferred to the SUCCESS bit during each execution
cycle of the algorithm.

Freeze Mode
The purpose of the freeze mode is to preserve the operating state of the algorithm after the
device has completed operation.The algorithm can be configured to freeze the value of the bits in
the status point after the algorithm has been selected by the attached MASTERSEQ. As a result,
this enables you to determine and evaluate the performance of the device at a later point in time.
A DEVICESEQ algorithm is selected when the INSTEP bit in the status point is TRUE. If the FRZ
field in the algorithm is initialized to FREEZE, the algorithm does not update the status point
after the INSTEP bit transitions from TRUE to FALSE. Thus, the status bits that originate with the
DEVICESEQ retain their previous values. This state is referred to as freeze mode.
In freeze mode, the algorithm sets the FROZEN bit to logic 1 in the status point. In order to clear
the freeze mode condition, the attached MASTERSEQ algorithm must be reset. This causes the
RESET bit in the status point to become TRUE and the DEVICESEQ resets according to the rules
outlined in the initial state and reset section.
Note: Emerson does not recommend using freeze mode with an associated MASTERSEQ
algorithm which is operating in priority mode. See the MASTERSEQ reference pages (see page
289) for more details on priority mode operation.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU -Integer

Data
Init

Required

Tuning Diagram
Number

MSTR

Variable

Required

Status point for


communication with
MASTERSEQ

LP

FAIL

Variable

Required

Input from device Logic


functions indicating
that a failure has
occurred.

LD, LP

REF_1100

147

5.29 DEVICESEQ

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

PASS

Variable

Required

Input from device Logic


functions indicating
that the execution of
the device has
completed
successfully.

LD, LP

RDY

Variable

Required

Input from device Logic


functions indicating
that the associated
device is ready for a
start command.

LD, LP

Tuning
Constant

Required

1.0

Time Base in Seconds.

Selectable

Required

BASE

* TARG

R1-Real

R2-Real

Defines the units that


the internal failure time
and accumulated time
are displayed in.
(Typical values are 1.0
or 0.1 sec.)
0.0

LA

Delay Time.
Defines the amount of
time that can elapse,
while the device is
running, before the
DEVICESEQ algorithm
sets the failure bit in
the status point to
Logic Delay Time 1. If
the value of the
parameters is 0.0, the
internal failure timer is
disabled.

FRZ

X1-Byte

Data Init

Required

NO
FREEZE

Options are:
NO FREEZE
FREEZE

Update Freeze Flag.


Enables and disables
freeze mode.
STRT

Variable

Required

Start Device

LD, LP

ACT

Variable

Optional

Output value of internal


failure timer.

LA

TIME

Variable

Optional

Output value of step


timer. Represents the
amount of time the
device has been
running

LA

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

148

REF_1100

5.29 DEVICESEQ
Status Bit Definitions
BIT NUMBER

REF_1100

ORIGINATOR

SIGNAL N AM E

DESCRIPTION

MASTERSEQ

GO

Signal to Device to Begin Step.

DEVICESEQ

FAILED

Signal to MASTERSEQ that


Current Step Encountered a
Failure.

DEVICESEQ

READY

Signal to MASTERSEQ that


Current Step Completed
Successfully.

DEVICESEQ

SUCCESS

MASTERSEQ

INSTEP

MASTERSEQ

OVERRIDE

MASTERSEQ

RESET

MASTERSEQ sets this bit logic 1


when reset input is TRUE.

DEVICESEQ

FROZEN

This bit is TRUE when


DEVICESEQ has Frozen updates
to the status point.

8 - 15

Reserved for
future use

Signal to MASTERSEQ that the


low-level Logic is Ready to
Receive a Remote Start
Command.
Signal from MASTERSEQ that the
Step is Currently Being Executed.
When TRUE indicates that the
OVRD input was used to
Increment the step.

149

5.30 DEVICEX

5.30 DEVICEX
Description
The DEVICEX algorithm combines the commands to open and close or start and stop a piece of
equipment with feedback signals indicating the command was accomplished. Devices allow
controlled access of the equipment they own and simplify the operation of the equipment. This
algorithm provides digital outputs that reflect how the I/O outputs of the device are being
maintained and the different status/mode conditions of the device.
The DEVICEX algorithm responds to the following signal combinations:

One digital output and no feedback.

One digital output and one digital feedback.

Two digital outputs and two digital feedback signals.

Two digital outputs and one feedback.

Three digital outputs and two feedbacks.

Signal Combinations
One Digital Output and No Feedback
With one output and no feedback, the DEVICEX algorithm sets the device to a defined state (on,
off, start, stop, open, close) when commanded.

150

REF_1100

5.30 DEVICEX
One Digital Output and One Digital Feedback
With one output and one feedback, the DEVICEX algorithm can set the output to a defined state,
set the In Transition bit (A2 field of bit 1 of the device record), and then monitor the input. If the
input's state does not match the output state within a user- specified amount of time, the device
indicates a failed operation has occurred. If the feedback indicates the desired state is reached
within the user-specified time, the device sets its current state field to the appropriate value. In
either case, the In Transition bit resets at the end of the operation.

REF_1100

151

5.30 DEVICEX
Two Digital Outputs and Two Digital Feedbacks
With two digital outputs and two digital feedbacks, the DEVICEX algorithm can set the appropriate
output to 1 or ON and wait for the appropriate feedback to be true. When the appropriate
feedback indicates true, the device sets its current state field to the appropriate state. If the
feedback does not indicate the appropriate state is reached within the user-specified time, the
device status display indicates a failed operation.

152

REF_1100

5.30 DEVICEX
Two Digital Outputs and One Digital Feedback
With two digital outputs and one feedback, the DEVICEX algorithm can set the appropriate output
to 1 or ON and wait for the feedback to go to the desired state. When the feedback indicates the
new state, the device sets its current state field to the appropriate state. If the feedback does not
indicate the appropriate state was reached within the user-specified time, the device indicates a
failed operation.

REF_1100

153

5.30 DEVICEX
Three Digital Outputs and Two Digital Feedbacks
With three outputs and two feedbacks, the algorithm can set the appropriate output to 1
according to the OPEN/CLOSE, START/STOP, or STOP TRAVEL command requested. If the
request is an Open or Close command, the feedbacks are monitored to see if the new state is
reached. When the feedbacks indicate the new state, the device's current state bit is updated to
the appropriate state. If the feedbacks do not indicate the appropriate state within the
user-specified time, the device indicates a failed operation. If the command is a Stop Operation
request, the algorithm writes a 1 to the Stop Travel output and indicate that the device is
stopped.

154

REF_1100

5.30 DEVICEX
Control Operation
If the state of the I/O is indeterminate (that is, when both input status bits are equal to 1, or both
are equal to zero and the device is not being commanded to another state), the Sensor Failure bit
(bit 2 and 3 of the 1W field of the DVCE point) in the device record is set and the quality is set to
bad. Note, that once a device is commanded to another state, the In Transition status is set to
true as soon as the algorithm starts driving the device to the commanded state. The In
Transition status is reset when the device feedback indicates the new state, and the operation is
successful. If the operation fails, and the device indicates it is neither open nor closed (both bits of
the feedbacks are zero or one), the In Transition status remains set and the Input Sensor Failure
bit is not set. However, the Operation Failed bit (bit 2 of the A2 field of the DVCE point) is set.
The device with two feedbacks may also be configured to display a Failure to Respond status. If
you configure the device to have a response time, the failure occurs if both feedbacks are not at a
zero (clear) state within the defined response time. If a Failure to Respond occurs, there is no
Operation Failure since the algorithm waits for a new command to process following the
response failure. However, if the device is Stopped and the feedbacks indicate a zero condition,
the Sensor Failure bit is not set.
The digital inputs and outputs used by the DEVICEX algorithm can either be signals read from or
written to I/O cards, other digital process points contained in the system, or a combination of the
two.
Whenever a device experiences a failed operation (or response failure), it may ignore additional
requests for state changes or it may continue servicing such requests. This depends on how the
device is configured (bit 4 of the C4 field of the algorithm record). You may want a DEVICEX
algorithm to ignore further requests after a piece of equipment has failed in order to prevent
further damage to the equipment. Regardless of how a device is configured, it services at least
one request subsequent to each change of operating mode (for example, Auto Mode to Manual
Mode). If the device is configured to ignore requests after a failure, it displays the status
LOCKOUT when a failed operation (or response failure) occurs.
Control Modes
A device is put into one of three modes by the operator by pressing the appropriate control key
(located on the Control Panel or Ovation Keyboard) or specified function key (located on a
standard keyboard). Note that the device must be configured to operate in that mode. Therefore,
the DEVICEX has three modes of operation that can be adjusted during monitoring. These modes
are as follows:

AUTO

MANUAL

LOCAL

Auto Mode
Auto Mode allows the Controller application program to control the device through userprogrammed logic. The device cannot go into Auto mode unless it is configured to operate in that
mode.
Once it is configured for Auto mode, the device can enter Auto mode if one of the following
occurs:

The operator presses the Auto mode control key.

The status of the device is a return from Tag Out and its default mode is Auto.

REF_1100

155

5.30 DEVICEX

The Reject to Auto (ARE) input becomes true and both Manual (MRE) and Local (LRE)
rejects are false.

The default mode of the device is Auto, and the DEVICEX algorithm is in its first pass.

Upon a failed operation if the device is configured.

The device exits Auto mode whenever one of the following happens:

The operator presses the Manual Mode control key.

The operator presses the Local Mode control key.

The operator Tags Out the device.

The Reject to Local (LRE) input goes true.

The Reject to Manual (MRE) input goes true.

A Failed Operation occurs and the device is configured to go to Manual mode when the
operation fails.

The device may be configured (bit 6 of the C4 field) to go to Manual mode when a change of state
command is entered. If this is the case, pressing the following control keys causes the device to
go to Manual mode:

Start/Open

Stop/Close

Stop Travel (discontinue operation in progress)

When in Auto Mode, the DEVICEX algorithm accepts commands from the digital process points
that are linked to the device through the DEVICEX algorithm. Possible commands are:

Stop/Close

Start/Open

Stop Travel (discontinue operation in progress)

Emergency OPEN/START Override

Emergency CLOSE/STOP Override

The device does not process any Manual or Local commands while in Auto mode.
Manual Mode
Manual Mode allows the operator to control the device with the control keys. The device cannot
go into Manual Mode unless it is configured for that mode. Once the device is configured, it can
enter Manual Mode when one of the following occurs:

156

The operator requests Manual mode by pressing the Manual Mode request key.

The status of the device is a return from Tag Out and its default mode is Manual.

The Reject to Manual (MRE) input goes true.

Upon startup of the Controller, the default mode of the device is Manual.

There is an occurrence of an Emergency Override and the default mode of the device is
Manual.

Upon a failed operation, if the device is configured.

REF_1100

5.30 DEVICEX

The device may be configured to go to Manual mode when a change of state command is
entered. If this is the case, pressing the following control keys causes the device to go to Manual
mode:

Start/Open

Stop/Close

Stop Travel (discontinue operation in progress)

The device exits Manual Mode whenever one of the following happens:

The operator requests Local mode with a control key.

The operator requests Auto mode with a control key.

The Reject to Local (LRE) or Reject to Auto (ARE) input becomes true and Manual Reject
(MRE) is false.

The operator requests the device to be Tagged-Out with the appropriate control key.

When in Manual Mode, the DEVICEX algorithm accepts commands from the following possible
commands:

Start/Open

Stop/Close

Stop

When in Manual Mode, the DEVICEX algorithm allows the Emergency Override to the device only
if the device is configured (see bit 0 in C4 field) such that the overrides have precedence over the
operator's commands.
In addition, when in Manual Mode, the DEVICEX algorithm does not process any Auto and Local
commands to Close, Open, or Stop the devices.
Local Mode
Local Mode is the lowest level mode of operation for the device. A device can enter this mode
only if the following two conditions are met:

The Reject to Local (LRE) input goes true.

The operator requests Local mode with a control key.

The device exits Local mode whenever one of the following happens:

The operator Tags Out the device.

The Reject to Manual (MRE) input goes true.

A Failed Operation occurs and the device is configured to go to Manual mode when operation
fails.

When in Local Mode, the DEVICEX algorithm accepts commands. Commands are digital process
points that are linked to the device through the DEVICEX algorithm. Possible commands are:

Stop/Close

Start/Open

Stop Travel (discontinue operation in progress)

Emergency OPEN/START Override

Emergency CLOSE/STOP Override

REF_1100

157

5.30 DEVICEX
As long as the device is in the Local mode, the DEVICEX algorithm does not execute any
commands from the Auto and Manual modes. However, the Emergency Overrides is honored
when the device is in Local mode.
Mode Independent Commands
There are several commands that are requested with keys and are executed if the device is in
Auto, Manual or Local mode. These commands are:

Tag Out the Device

Acknowledge Trip

Auto mode request

Manual mode request

Local mode request

These commands are not accepted, however, if the device is tagged-out.


Tag Out
When in Tag Out Mode, the device ignores all commands except Remove Tag Out. The device
goes to its default mode when the Tag Out is removed.
Lock Out
A subset of the Tag Out mode is the device LOCK OUT mode. Lock out occurs if the device is
configured (see bit 4 C4 field) to ignore subsequent commands to change state after an operation
fails. In other words, the device has only one opportunity to change state in a particular mode. If
the operation fails, the DEVICEX algorithm does not accept another Open/Start or Close/Stop
command while locked out.
A device may be removed from a Lock Out condition by any of the following actions:

Pressing the Auto, Manual or Local mode control keys.

Tagging out the device.

Emergency Overrides
In addition to the change of state commands, in each of the operating modes there are two other
commands: Emergency Start/Open/Trip and Emergency Stop/Close/Reset.
These two commands are generated by external logic in the Controller and can act as emergency
overrides over all other commands, including Stop Travel.
Whenever either the Emergency Open, or Emergency Close input becomes true, the DEVICEX
algorithm forces the device to its default state and attempts to get the device to the commanded
state. (If the DEVICEX algorithm is not configured to ignore failures, the emergency command
executes only once.) If both emergency overrides are set at the same time, the device remains on
its present course of action.
As long as either Emergency input is set, the DEVICEX algorithm ignores all Auto and Local
commands to drive the device. The device may also be configured to have the Emergency inputs
override the Manual commands or the Manual commands to override the Emergency inputs.
Upon removal of the emergency override, the device returns to its default mode.

158

REF_1100

5.30 DEVICEX

Note: Emergency overrides, like all other commands, are ignored when the device is tagged
out or in Local Mode.
Change of State
In general, when a change of state command is in progress, it is continued until the device
reaches the new state or until a time out occurs. The following conditions causes an operation in
progress to be discontinued:

The device is Tagged Out, resulting in inputs being read and outputs not set to true. They are
left as they were at the time of Lock Out.

A Stop (discontinue operation) command is requested by the current control mode and an
Emergency Override is not in progress. However, if the device is in Manual mode, and it is
configured such that the Emergency Overrides do not have priority over Manual commands, a
Manual Stop request overrides the Emergency command.

In order for a change of state command to be executed, its proper permissive bit must be true.
For example a Manual Close/Stop command is only executed if the Close/Stop permissive bit of
the device is true. The Emergency Override and Stop (discontinue operation) commands do not
require any permissives to be true in order to be executed.
The permissives of a device are set to true on start-up and remain true unless the DEVICEX
algorithm is used to update them.
The amount of time that a device allows for the equipment to change state following a command
can be set by the user. You must specify the units of time for transition (tenths of a second,
seconds, or minutes), and the maximum number of time units to get to the set and reset states.
You can also specify a time period (in loops) for the equipment to respond to a command.
For devices with feedback, the amount of time that the DEVICEX algorithm sets the appropriate
output to ON can also be configured by the user. The following modes are supported:

Set output ON for a user-configured time period (less than the transition time), or until the
new state is reached, which ever occurs first. (Indicate this mode by setting bit 1 of C4 field.)

Set output ON for a user-configured time period (equal to the transition time) or until the new
state is reached, which ever occurs first. (Indicate this mode by setting bit 2 of the C4 field.)

Maintain output ON continuously, until a new command is given. This mode also has a
time-out associated with it, but the pulsing continues after the time-out occurs. If the operation
should fail (device does not reach the commanded state) the operation is flagged as a failure,
and the pulsing discontinues until a new command is given. (Indicate this mode by setting bit
3 of the C4 field.)

For the case where the device has only one output (no feedbacks), the output is set to ON (or
OFF) continuously depending on whichever command is requested. There are no time-outs for
this case.
A device always writes to its output(s) when a new change of state command occurs regardless
of the state of its input(s). If the device command is from other application logic, care should be
taken to ensure that the command is maintained or pulsed as needed.
The device continuously checks for change of state commands when it is not in the process of
executing one. The device executes a change of state command when it is first set to ON. If the
command stays ON, the device treats it as a new command when it finishes executing the last
command. Since the device writes to its output(s) when a new command occurs, its output(s)
cycles continuously ON and OFF if the following are true:

REF_1100

159

5.30 DEVICEX

A change of state command is ON and it matches the state of the device's input(s).
The device is configured to set its output(s) ON for a certain amount of time, then OFF.

Alarming
The DEVICE algorithm supports seven types of alarms. All of these alarms, except Trips, require
operator acknowledgment. The device conditions which can produce alarms are:

Failed Operations

Failures to Respond

Trips

Alarm State

Sensor Failures

Emergency Overrides

Attention (Trouble)

Failed Operations
If the Failed Operations alarm is configured, the DEVICEX algorithm puts the device in alarm
whenever the equipment does not complete a change-of-state command (for example, if a valve
is commanded to open and it does not do so within the user-specified time). A Failed Operation
Alarm clears upon the next Open, Close, or Stop command to the device.
Failure to Respond
If the Failure to Respond alarm is configured, the DEVICEX algorithm puts the device into alarm if
the feedbacks do not reflect an In Transition state within a user-specified number of loops. The
In Transition state must be that both feedbacks have a value of 0.
Trips
If Trip alarms are configured, the DEVICEX algorithm puts the device into alarm whenever the
equipment unexpectedly changes state (for example, when a breaker trips open). A Trip Alarm
clears when you acknowledge the Trip by commanding the device to the Tripped state. Trip Alarm
returns do not require acknowledgment by the user via the Alarm window since they are cleared
by commanding the device.
Alarm State
The device can be configured to go into alarm based on a user-defined state. The alarm clears
only when the device returns to the non-alarmed state. These alarms must be acknowledged by
the user.
Sensor Failures
Either one or both of the following conditions cause a Sensor Failure alarm:

160

The device feedbacks are indeterminate (that is, both show a 00 or 11 status) and the device
is not in transition. This is an input sensor alarm.

The outputs do not reflect the value written to them (output sensor alarm).

REF_1100

5.30 DEVICEX

Emergency Override
The Emergency Override alarm is generated any time an override occurs and the device is not at
the override state. For example, the occurrence of an Emergency Open generates an alarm if the
device is Closed. If both override inputs happen to become true at the same time, an alarm is
generated regardless of the state of the device.
Attention (Trouble)
The Attention (Trouble) alarm is caused by the following conditions:

The device is in Auto mode and an Auto Open/Start command is present while the device
Open/Start permissive is OFF or and Emergency Close/Stop override is ON.

The device is in Auto mode and an Auto Close/Stop command is present while the device
Close/Stop permissive if OFF or and Emergency Open/Start override is ON.

The device is not in Auto mode and an Auto Open/Start command is present while the device
is not Open or Running.

The device is not in Auto mode and an Auto Close/Stop command is present while the device
is not Closed or OFF.

If the device is configured to go into alarm based on a combination of conditions, the point is put
into alarm when either one or more of the alarm conditions exist.
The following alarming options are available:

No Alarming

Failed Operations, Sensor Failures, Trips, Response Failures, Attention conditions, and
Emergency Overrides

Failed Operations, Sensor Failures, Trips, Response Failures, Attention conditions,


Emergency Overrides, and Alarm State

Clearing Alarms
Upon Tagging Out, Scan Removing, or putting a device into Local mode, the following alarms are
cleared:

Failed Operation

Failure to Respond

Sensor Failures

Trips

Attention

A State Alarm, however is not cleared by any of the conditions mentioned above. It must be
cleared by commanding the device.
Tagging out or going to Local mode clears any Emergency Override present.

REF_1100

161

5.30 DEVICEX

Device Status Reporting


The device record maintains information corresponding to the current status of a device.
Depending on the state of a device, its displayed status includes a combination of the following
conditions:

Current State

In Transition

Operation Failed

Tripped

Stopped

Emergency Close

Emergency Open

Current Mode

Override Failure

Scan Removed

Alarm Checking Off

Tagged Out

Locked Out

Quality

Permissives

Rejects

The status information mentioned above comes from various flags (bits) in certain fields in the
packed point and algorithm record.
The A2 field of the Packed point (DVCE) has the following information: The bits in the A2 field are
defined in the following table:
A2 Field Bit Information

162

BIT

DESCRIPTION

Bit 0

Current State. This bit indicates the current state of the feedback signals. In case feedback
signals give conflicting data, the last known state is reported. When scanned removed the
last command state is reported.

Bit 1

In Transition. This bit indicates the device algorithm is currently in the process of trying to
change the state of its equipment. The bit is set true when the device starts to execute a
command. It is reset when the feedback signals indicate the operation is complete or the
operation has failed.

Bit 2

Operation Failed. This bit is set following any unsuccessful attempt to change the state of
the equipment. It remains set until the next attempt is made to change the state of the
equipment. Failed operation are not indicated if the device is scanned off.

REF_1100

5.30 DEVICEX

BIT

DESCRIPTION

Bit 3

Tripped. This bit is set any time the equipment changes stage on its own, not by the
algorithm. It remains set until the Trip Acknowledge command. If it is not acknowledged, no
other change of state operations, in any mode are processed. The tripped bit is not set when
the device is Tagged Out or Scanned Removed.

Bit 4

Stopped. This bit is set whenever the device is commanded to stopped. The bit remains set
until the next attempt is made by the device to change the state of the equipment.

Bit 5

Emergency Close. This bit reflects the status of the override inputs to the device.

Bit 6

Emergency Open. This bit reflects the status of the override inputs to the device.

Bit 7

Last Commanded State. This bit reflects the last known state of the device.

Bit 8

Local Mode. This bit indicates that the device is in local mode.

Bit 9

Manual Mode. This bit indicates that the device is in manual mode.

Bit 10

Auto Mode. This bit indicates that the device is in auto mode.

Bit 11

Reserved.

Bit 12

Attention. This bit indicates certain error conditions are present.

Bit 13

Failed to Respond. This bit indicates that the device did not respond to a command.

Bit 14

Locked Out. This bit indicates that the state of the device is locked out.

Bit 15

Tagged Out. This bit indicates that the state of the device is tagged out.

The C5 field in the DEVICEX algorithm holds the command word. This command word is the
interface between a Controller and the algorithm. The bits in the C5 field are defined in the
following table:
C5 Field Bit Information
BIT

DESCRIPTION

Bit 0

Emergency Close/Stop

Bit 1

Emergency Open/Start

Bit 6

Current State of Input 1 (Open/Start)

Bit 7

Current State of Input 2 (Close/Stop)

Bit 8

Current State of Input 3 (Stop)

Bit 9

Value currently being written to Output 1 (Open/Start)

Bit 10

Value currently being written to Output 2 (Close/Stop)

Bit 11

Value currently being written to Output 3 (Stop)

Bit 12

Close/Stop permissive

Bit 13

Open/Start permissive

REF_1100

163

5.30 DEVICEX
Setting Device Parameters
Alarming
The following fields in the Packed point (DVCE) must be set for alarming:
Alarming Parameters
TYPE

OF

AL ARMING

FIELDS

TO BE

SET

No Alarming

Set E0 and E1 to zero.

Operate, Sensor, Trips, Overrides and Attention

Set E0 and E1 to 0x386c

Operate, Sensor, Trips, Overrides and Attention,


State Set(1)

Set E0 and E1 to 0x386d

Operate, Sensor, Trips, Overrides and Attention,


State Set(0)

Set E0 to 0x386d and E1 to 0x386c

Pulse and Transition Timing


The amount of time a device allows for the equipment to change state following a command is
user-configurable. You must specify the units of the time (tenths of a second, seconds, or
minutes) to measure the transition time in, and the maximum number of time units to get to the
set and reset states. You may also specify a time period (in loops) for the equipment to respond
to a command.

Time Units field (D0 field in the algorithm record) - holds the user-entered time units for
the set and reset time-outs. Valid values are 0 for tenth of seconds, 1 for seconds, and 2 for
minutes.

Set Time-out field (D2 field in the algorithm record) - holds the user-entered value. The
maximum number for tenth of a second and second is 255. The maximum number for
minutes is 100.

Reset Time-out field (YT field in the algorithm record) - holds the user-entered value. The
maximum number for tenth of a second and second is 255. The maximum number for
minutes is 100.

Time to Respond field (YP field in the algorithm record) - applies only to devices with two
feedbacks. If this value is non-zero, the device feedbacks must respond to a command within
the response time or the operation is discontinued and a 'Failure to Respond' alarm is
generated.

The C4 field in the algorithm record defines the mode configuration. The bits in the C4 field are
defined in the following table:
C4 Field Bit Information
BIT
Bit 0

164

MODE

DESCRIPTION
Off

The emergency Open/Start and Close/Stop commands override


Auto and Local Mode commands.

On

The Emergency Open/Start and Close/Stop commands override


all other commands.

REF_1100

5.30 DEVICEX

BIT

MODE

DESCRIPTION

Bit 1

On

Set output 'ON' for a configured time period (less than the
time-out). If this bit is set, the algorithm maintains the appropriate
output for the number of loops in the Pulse Time or until the
operation is successful, whichever occurs first.

Bit 2

On

Set output 'ON' until a user-configured time-out (or the operation


is successful). The transition times for setting and resetting the
device are entered in the Set Time-out and Reset Time-out fields.

Bit 3

On

Set output 'On' continuously until a new command is entered.

Bit 4

On

Set Override Failure bit in the A2 field of the DVCE point.

Bit 5

On

Do not execute the STOP command

Bit 6

Off

Manual Open/Close/Stop commands force the device to Manual


mode.

On

Manual Open/Close/Stop commands are processed only it the


device is in Manual mode.

Off

Device default mode is Manual.

On

Device default mode is Auto

Bit 7

Note: If bits 1, 2, and 3 are all zero, then the information in bits 3, 4, and 5 in the Custom
Configuration word is used to maintain/pulse the outputs.
The custom configuration (C7 field in the algorithm record) bits are defined below. You may also
define the mode(s) a device may operate in, the position the device may be tagged out in, and so
forth as defined in the following table:
C7 Field Bit Information
BIT

MODE

DESCRIPTION

Bit 0

On

The device is allowed to operate in Auto mode.

Bit 1

On

The device is allowed to operate in Local mode.

Bit 2

On

The device is allowed to operate in Manual mode.

Bit 3

On

The Open (Start) output is maintained continuously.

Off

The Open (Start) output is pulsed once on an Open/Start command.

On

The Close (Stop) output is maintained continuously.

Off

The Close (Stop) output is pulsed once on an Close/Stop.

On

Only applicable to Open/Close/Stop type devices. The Stop output is


maintained continuously.

Off

The Stop output is pulsed once on a Stop command.

Bit 4

Bit 5

REF_1100

165

5.30 DEVICEX

BIT
Bit 6

MODE

DESCRIPTION
On

The Auto Stop is maintained input (always on until the algorithm turns
it off).

Off

The Auto Stop is pulsed input.

On

The Auto Start is maintained input (always on until the algorithm turns
it off).

Off

The Auto Start is pulsed input.

On

The Local Stop is maintained input (always on until the algorithm


turns it off).

Off

The Local Stop is pulsed input.

On

The Local Start is maintained input (always on until the algorithm


turns it off).

Off

The Local Start is pulsed input.

Bit 10

On

The Close/Stop permissive is internally generated.

Bit 11

On

The Open/Start permissive is internally generated.

Bit 12

On

The Travel (Transition) Timer Enabled is internally generated.

Bit 13

On

The equipment may be Tagged-out in the open position.

Bit 14

On

If Bit 14 is set, equipment may be Tagged-out in the closed position.

Bit 7

Bit 8

Bit 9

For Start/Stop devices only, equipment may be tagged out in the


Off/Stop position.
Bit 15

166

On

The device is forced to Manual mode when a failed operation occurs.

REF_1100

5.30 DEVICEX
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU - Byte

Data Init.

SET

D2 - Integer

RSET

Required

47

Tuning Diagram
Number.

Data Init.

Required

20

Set time-out (Max of


255 if units are 1/10
seconds or seconds.
Max. of 100 if units are
minutes.)

YT - Integer

Data Init.

Required

20

Reset time-out (Max of


255 if units are 1/10
seconds or seconds.
Max. of 100 if units are
minutes.)

EM

C4 - Integer

Data Init.

Required

Emergency override
commands

PT

D4 - Integer

Data Init.

Required

Pulse Time

TR

YP - Integer

Data Init.

Required

Number of Loops to
Respond

CZ

C7 - Integer

Data Init.

Required

Configuration

REF_1100

MIN.
POINT
RECORD

167

5.30 DEVICEX

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

TU

D0 - Integer

Data Init.

Required

DEFAULT
VALUE

DESCRIPTION

Units time-out

MIN.
POINT
RECORD
-

Value Time Units


0 - Tenths of Seconds
1 - Seconds
2 - Minutes

168

TYPE

C8 - Integer

Data Init.

Required

Open

Device Type:
Open/close or
Start/Stop

DTIM

D5 - Integer

Data Init.

Required

Delay Time in Seconds

IN1

Variable

Optional

Device Input 1 Feedback

LD, LP

IN2

Variable

Optional

Device Input 2 Feedback

LD, LP

IN3

Variable

Optional

Device Input 3 Feedback

LD, LP

CPRM

Variable

Optional

Close Permissive

LD, LP

OPRM

Variable

Optional

Open Permissive

LD, LP

ARE

Variable

Optional

Auto Reject

LD, LP

LRE

Variable

Optional

Local Reject

LD, LP

MRE

Variable

Optional

Manual Reject

LD, LP

LOPL

Variable

Optional

Local Open Logic

LD, LP

LCLL

Variable

Optional

Local Close Logic

LD, LP

LSTL

Variable

Optional

Local Stop Logic

LD, LP

AOPL

Variable

Optional

Auto Open Logic

LD, LP

ACLL

Variable

Optional

Auto Close Logic

LD, LP

ASTL

Variable

Optional

Auto Stop Logic

LD, LP

TMEN

Variable

Optional

Transition Timer
Enable

LD, LP

EMCL

Variable

Optional

Emergency Close/Stop

LD, LP

EMOP

Variable

Optional

Emergency Open/Start

LD, LP

DVCE

Variable

Required

Device record

LP

OUT1

Variable

Optional

Output 1

LD, LP

OUT2

Variable

Optional

Output 2

LD, LP

OUT3

Variable

Optional

Output 3

LD, LP

OUT4

Variable

Optional

Output 4

LD, LP

LOC

Variable

Optional

Local Mode

LD, LP

MAN

Variable

Optional

Manual Mode

LD, LP

REF_1100

5.30 DEVICEX

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

AUTO

Variable

Optional

Auto Mode

LD, LP

OPFL

Variable

Optional

Failure-to-Respond

LD, LP

TRIP

Variable

Optional

Report Trip

LD, LP

STAT

Variable

Optional

State of the device

LD, LP

DEST

Variable

Optional

Delay Output

LD, LP

REF_1100

169

5.31 DFIELD

5.31 DFIELD
Description
The DFIELD algorithm is used only with the hardware digital output variable points. It should be
used instead of output digital hardware I/O connectors in applications involving interfaces to
control elements (for example, valves and dampers).
The output digital point (FAIL) is TRUE when the algorithm detects a hardware error on the I/O
card.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU

Data Init.

Required

Tuning Diagram
Number

Variable

Required

Input (digital)

LL

Variable

Required

Hardware Output
(digital)

LL

Variable

Optional

Hardware Error Point


(digital)

LL

IN1
HWPT
FAIL
1

170

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD
-

You cannot scan remove the HWPT point.

REF_1100

5.32 DIGCOUNT

5.32 DIGCOUNT
Description
The DIGCOUNT algorithm sets the output digital FLAG TRUE if M inputs or more of the N digital
inputs are TRUE (where N < 12, and M and N are constants). The output analog record is set
equal to the number of TRUE digital inputs.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init.

Required

85

Tuning Diagram
number

NMIN

G4-Integer

Data Init.

Required

Total digital inputs


(N)

Selectable

Required

Maximum TRUE
digital inputs (M)

LA

* MTRU

X1-Byte

IN1

Variable

Required

Input (digital)

LD, LP

IN2

Variable

Optional

Input (digital)

LD, LP

Variable

Required

Output (analog)

LA

IN12
OUT

REF_1100

171

5.32 DIGCOUNT

N AM E

FOUT

LC ALG.
RECORD
FIELD
-

TYPE

REQUIRED/
OPTIONAL

Variable

Required

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Output (digital flag)

LD, LP

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

172

REF_1100

5.33 DIGDRUM

5.33 DIGDRUM
Description
The DIGDRUM algorithm is a software drum controller with up to 32 digital output values and up
to 50 steps. The outputs selected to be TRUE are based on the current step number and a list of
up to 50 initialized integer values. These integers contain 32 bits of data, which are then mapped
onto the 32 digital outputs. Thus, for each step, you can initialize any combination of TRUE and
FALSE states for any or all of the 32 outputs by converting a string of up to 32 bits into a
hexadecimal number.
Functional Symbol

G0=

B0=

C0=

D0=

YM=

G1=

B1=

C1=

YQ=

YL=

G2=

B2=

C2=

D2=

E2=

G3=

YU=

C3=

YP=

E3=

G4=

B4=

C4=

D4=

E4=

G5=

B5=

C5=

D5=

YC=

G6=

B6=

C6=

D6=

Y9=

G7=

B7=

C7=

YN=

E7=

G8=

B8=

C8=

D8=

E8=

G9

B9=

YT

D9=

Y8=

REF_1100

173

5.33 DIGDRUM

These 50 integers should be input as hexadecimal numbers (for example, 0x1234). Refer to the
Binary to Hexadecimal Conversion Table (see page 6) for information on how to create a
hexadecimal number from 16 bits.
The current step number may be tracked to a selected step (TRIN) when in tracking mode (TMOD
= TRUE), increased (INC), or decreased (DEC). The current step number is only increased or
decreased on a FALSE to TRUE transition of INC and DEC. The maximum number of steps must
be initialized. When the current step number becomes greater than the number of steps, the
current step number is reset to one. If TRIN is a non-integer value, the algorithm rounds the value
to the nearest integer. Any value for TRIN not in the range of one to NMIN is converted to a one
by the algorithm.
The track input value (TRIN) and output value (OUT) are checked for invalid real numbers. If a
tracking request is received and TRIN is an invalid number, then the tracking request is ignored.
However, the current step can be increased (using INC) or decreased (using DEC) even when
TRIN is an invalid number.
If the algorithm calculates an invalid real number output, the value is invalid and the quality is set
to BAD.
Algorithm Record Type = LC
Algorithm Definitions

174

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Integer

Data Init.

Required

102

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram Number

INC

Variable

Required

Input (digital signal to


increase the step
number)

LD, LP

DEC

Variable

Required

Input (digital signal to


decrease the step
number)

LD, LP

TMOD

Variable

Required

Input (digital signal);


tracking request

LD, LP

TRIN

Variable

Required

Input (analog); tracks the


step number to this value

LA

NMIN

X1-Byte

Tuning
Constant

Required

Maximum number of
steps

REF_1100

5.33 DIGDRUM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

TYPE

X2-Byte

Data Init

Optional

DEFAULT
VALUE
Long

DESCRIPTION

Steps are Long or Short.

MIN.
POINT
RECORD
-

Long = Step 1 to Step 50


defines up to 32 outputs.
Short = Double number
of steps to 100 since
parameter I/01 contains
Step 1 value in the lower
16 bits, and Step 2 value
in the higher 16 bits.
Therefore, only up to 16
outputs are used.
I01

G0-Integer

Tuning
Constant

Optional

Output values for Step 1

I02

G1-Integer

Tuning
Constant

Optional

Output values for Step 2

I03

G2-Integer

Tuning
Constant

Optional

Output values for Step 3

I04

G3-Integer

Tuning
Constant

Optional

Output values for Step 4

I05

G4-Integer

Tuning
Constant

Optional

Output values for Step 5

I06

G5-Integer

Tuning
Constant

Optional

Output values for Step 6

I07

G6-Integer

Tuning
Constant

Optional

Output values for Step 7

I08

G7-Integer

Tuning
Constant

Optional

Output values for Step 8

I09

G8-Integer

Tuning
Constant

Optional

Output values for Step 9

I10

G9-Integer

Tuning
Constant

Optional

Output values for Step 10

I11

B0-Integer

Tuning
Constant

Optional

Output values for Step 11

I12

B1-Integer

Tuning
Constant

Optional

Output values for Step 12

I13

B2-Integer

Tuning
Constant

Optional

Output values for Step 13

I14

YU-Integer

Tuning
Constant

Optional

Output values for Step 14

I15

B4-Integer

Tuning
Constant

Optional

Output values for Step 15

I16

B5-Integer

Tuning
Constant

Optional

Output values for Step 16

I17

B6-Integer

Tuning
Constant

Optional

Output values for Step 17

REF_1100

175

5.33 DIGDRUM

176

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

I18

B7-Integer

Tuning
Constant

Optional

Output values for Step 18

I19

B8-Integer

Tuning
Constant

Optional

Output values for Step 19

I20

B9-Integer

Tuning
Constant

Optional

Output values for Step 20

I21

C0-Integer

Tuning
Constant

Optional

Output values for Step 21

I22

C1-Integer

Tuning
Constant

Optional

Output values for Step 22

I23

C2-Integer

Tuning
Constant

Optional

Output values for Step 23

I24

C3-Integer

Tuning
Constant

Optional

Output values for Step 24

I25

C4-Integer

Tuning
Constant

Optional

Output values for Step 25

I26

C5-Integer

Tuning
Constant

Optional

Output values for Step 26

I27

C6-Integer

Tuning
Constant

Optional

Output values for Step 27

I28

C7-Integer

Tuning
Constant

Optional

Output values for Step 28

I29

C8-Integer

Tuning
Constant

Optional

Output values for Step 29

I30

YT-Integer

Tuning
Constant

Optional

Output values for Step 30

I31

D0-Integer

Tuning
Constant

Optional

Output values for Step 31

I32

YQ-Integer

Tuning
Constant

Optional

Output values for Step 32

I33

D2-Integer

Tuning
Constant

Optional

Output values for Step 33

I34

YP-Integer

Tuning
Constant

Optional

Output values for Step 34

I35

D4-Integer

Tuning
Constant

Optional

Output values for Step 35

I36

D5-Integer

Tuning
Constant

Optional

Output values for Step 36

I37

D6-Integer

Tuning
Constant

Optional

Output values for Step 37

I38

YN-Integer

Tuning
Constant

Optional

Output values for Step 38

I39

D8-Integer

Tuning
Constant

Optional

Output values for Step 39

REF_1100

5.33 DIGDRUM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

I40

D9-Integer

Tuning
Constant

Optional

Output values for Step 40

I41

YM-Integer

Tuning
Constant

Optional

Output values for Step 41

I42

YL-Integer

Tuning
Constant

Optional

Output values for Step 42

I43

E2-Integer

Tuning
Constant

Optional

Output values for Step 43

I44

E3-Integer

Tuning
Constant

Optional

Output values for Step 44

I45

E4-Integer

Tuning
Constant

Optional

Output values for Step 45

I46

YC-Integer

Tuning
Constant

Optional

Output values for Step 46

I47

Y9-Integer

Tuning
Constant

Optional

Output values for Step 47

I48

E7-Integer

Tuning
Constant

Optional

Output values for Step 48

I49

E8-Integer

Tuning
Constant

Optional

Output values for Step 49

I50

Y8-Integer

Tuning
Constant

Optional

Output values for Step 50

STEP

Variable

Required

Output (analog); current


step number

LA

O01

Variable

Optional

Output (digital signal);


least-significant bit; set or
reset according to the
bits in the integer
selected by the current
step number

LD, LP

O02

Variable

Optional

Output (digital signal); set


or reset according to the
bits in the integer
selected by the current
step number

LD, LP

Variable

Optional

Output (digital signal);


most significant bit set or
reset according to the
bits in the integer
selected by the current
step number

LD, LP

.
.
.
O31
O32

REF_1100

177

5.34 DIGITAL DEVICE

5.34 DIGITAL DEVICE


Description
The Digital Device algorithm provides logic to control the following seven types of devices:

SAMPLER (Controlled Sampler) (see page 179).

VALVE NC (Non-Controlled Valve) (see page 181).

MOTOR NC (Non-Controlled Motor) (see page 182).

MOTOR (Simple Controlled Motor) (see page 184).

MOTOR 2-SPD (Two-Speed or Bi-directional Controlled Motor) (see page 187).

MOTOR 4-SPD (Two-Speed and Bi-directional Controlled Motor) (see page 191).

VALVE (Controlled Valve) (see page 196).

The Digital Device algorithm provides a digital alarm bit to be set for applicable devices. The
algorithm provides time delays for each device as needed, which keeps the device from failing
while the device is processing a command. The time delay for each device can be independently
tuned in the Control Builder. A run counter is maintained for the motor and the sampler devices
and can be reset by the Operator Keyboard. The algorithm keeps the count in local memory as
either hours, minutes, or seconds, and then saves it as an analog output.
Where applicable, there are three modes: AUTO, MANUAL, and OFF. When the device is in OFF
mode, the algorithm only tracks the inputs and does not respond to any control logic or operator
commands. When in AUTO mode, the device only responds to control logic, and in MANUAL
mode, the device only responds to the Program Keys on the Operator Keyboard (described in the
following table).
Interface Keys on the Operator Keyboard
PROGRAM KEY

DESCRIPTION

P1

Close/Stop

P2

Open/Start/Fast Forward Start/Forward Start/Fast Start

P3

Slow Forward Start/Reverse Start/Slow Start

P4

Fast Reverse Start

P5

Slow Reverse Start

P6

Reset Total Run Time

P7

Reset Device Algorithm

In order for a device to respond to a command, the device must be available - not failed - and in
either MANUAL or AUTO mode. Where applicable, the algorithm can be reset by either a remote
reset device point, or by the Operator Keyboard. When the device is reset, the alarm output point
is always reset, along with the packed status alarm bits. When a device is in either the Failed or
Unavailable condition, the device remains in the OFF mode until the problem is resolved and the
device is reset. The device is always put in the MANUAL mode when the reset is set and the
device is READY. The algorithm responds for both the Remote Reset and the Operator Reset in
any mode.

178

REF_1100

5.34 DIGITAL DEVICE

5.34.1 SAMPLER (Controlled Sampler)


Description
The Controlled Sampler device has the option of having the Operator Keyboard on or off. The
priority is set in the Control Builder and can only be changed in the Control Builder. The list of
inputs and outputs are found in the Algorithm Definitions table.
If the Operator Keyboard is off, the keyboard keys are disabled, and the output (OUT1) of the
device follows the input (IN1). When the Operator Keyboard is on, the output follows the input
until the output is changed manually by the operator with either the STOP or START keys. The
output follows the input again once there is a change in the input.
The runtime counts when the output is set. The total runtime will not update when Sample Reset
Priority (SPRI) is set to "Operator Keyboard OFF." The operator has the ability to reset the
runtime when either priority is set. There are no modes, time delays, or alarms associated with
the Controlled Sampler. The runtime can be tuned by changing the RUNT parameter in the
Control Builder.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init.

Required

30

Tuning Diagram
Number

SPRI

X2-Byte

Data Init.

Required

Keyboard

Sampler Reset Priority


Keyboard = Operator
Keyboard ON
Input = Operator
Keyboard OFF

BASE

C6-Integer

Tuning
Constant

Optional

Hours

Time base for total run


Hours
Minutes
Seconds

RUNT

R1 - Real

Data Init

Required

Tune the total runtime


value.

IN1

Variable

Optional

Remote Run (digital)

LD

OUT1

Variable

Required

Running Output (digital)

LD

RUN

Variable

Optional

Total Run Time (analog)

LA

REF_1100

179

5.34 DIGITAL DEVICE

Note: The RUN output (total run time) of the algorithm will not update if SPRI (sampler reset
priority) is selected as "Input" (that is, Operator Keyboard is OFF) in the Control Builder, even
though the device is running.

180

REF_1100

5.34 DIGITAL DEVICE

5.34.2 VALVE NC (Non-Controlled Valve)


Description
The Non-Controlled Valve does not accept control information from either the control logic or the
operator (see the Algorithm Definitions table for a list of inputs and outputs). The algorithm
activates the digital alarm bit when in the failed state (see the Truth table for states of the valve).
There are no modes, time delay, or run time associated with this device.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Integer

Data Init.

Required

30

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram
Number

IN1

Variable

Required

Open Contact (digital)

LD

IN2

Variable

Required

Close Contact (digital)

LD

IN3

Variable

Optional

Remote Reset (digital)

LD

ALRM

Variable

Optional

Device Alarm (digital)

LD

Truth Table
OPEN STATUS

REF_1100

CLOSED STATUS

V ALVE STATE

Set

Set

Moving

Set

Reset

Open

Reset

Set

Closed

Reset

Reset

Failed

181

5.34 DIGITAL DEVICE

5.34.3 MOTOR NC (Non-Controlled Motor)


Description
The Non-Controlled Motor does not accept control information from either the control logic or the
operator (refer to the Algorithm Definitions table for the list of inputs and outputs). The digital
alarm bit is set when the motor is either in the failed state or Unavailable state (refer to the Truth
table for the states of the motor). The Non-Controlled Motor has an analog run time output that
may be reset by the operator. The runtime value can be tuned in the Control Builder. There are no
modes or time delays associated with this device.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

182

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

BASE

C6-Integer

RUNT

R1 - Real

MIN.
POINT
RECORD

Required

30

Tuning Diagram
Number

Tuning
Constant

Optional

Time base for total


run.
0 = Hours
1 = Minutes
2 = Seconds

Data Init

Required

Tune the runtime


value.

IN1

Variable

Required

Ready Contact
(digital)

LD

IN2

Variable

Required

Running Contact
(digital)

LD

IN3

Variable

Optional

Remote Device Reset


(digital)

LD

ALRM

Variable

Optional

Device Alarm (digital)

LD

RUN

Variable

Optional

Total Run Time


(analog)

LA

REF_1100

5.34 DIGITAL DEVICE

Truth Table
R E AD Y S T A T U S

REF_1100

RUNNING STATUS

MOTOR STATE

Set

Set

Running

Set

Reset

Ready

Reset

Set

Failed

Reset

Reset

Unavailable

183

5.34 DIGITAL DEVICE

5.34.4 MOTOR (Simple Controlled Motor)


Description
The Simple Controlled Motor runs at one speed and in one direction when in operation. This
motor has the option of accepting start or stop commands from either the control logic or the
operator.
When the device is in AUTO mode, the algorithm accepts control commands from the Remote
Start (IN3) and Remote Stop (IN4) inputs. When the device is in MANUAL mode, the algorithm
accepts the control commands Stop and Start from the Operator Keyboard. Whenever a
command is processed in either AUTO or MANUAL mode, the outputs (OUT1 and OUT2) are set
accordingly for the duration of the time delay previously set in the Control Builder.
The Stop Permissive (IN8) must be set to allow the motor to be stopped. The Stop Permissive is
automatically set when no input is connect to IN8. Refer to the Algorithm Definitions table for the
list of inputs and outputs.
The digital alarm bit is set when:

The device is in the Failed state.

The device is in the Unavailable state.

The device changes running states without being commanded to do so.

The device fails to start or stop.

When the device fails to start or stop, the alarm triggers, but the device stays in the current mode
and continues looking for the proper combination of Running and Ready. When this combination
is detected, the alarm is reset and the device continues operating in a normal condition. All other
alarms put the device in OFF mode. Refer to the Truth table for the states of the motor.
The Simple Controlled Motor also has a status packed point that displays which alarm has been
set, the last command, and which mode it is currently in. Refer to the Output Status Bits table for
the list of the status bits.
Functional Symbol

184

REF_1100

5.34 DIGITAL DEVICE


Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

DLY1

C0-Integer

DLY2

MIN.
POINT
RECORD

Required

30

Tuning Diagram
Number

Tuning
Constant

Required

Time for Ready after


Stop

C1-Integer

Tuning
Constant

Required

Time for Stop

DLY3

C2-Integer

Tuning
Constant

Required

Time for Start

BASE

C6-Integer

Tuning
Constant

Optional

Time base for total


run.
0 = Hours
1 = Minutes
2 = Seconds

IN1

Variable

Required

Ready Contact
(digital)

LD

IN2

Variable

Required

Running Contact
(digital)

LD

IN3

Variable

Optional

Remote Start (digital)

LD

IN4

Variable

Optional

Remote Stop (digital)

LD

IN5

Variable

Optional

Remote Auto (digital)

LD

IN6

Variable

Optional

Remote Manual
(digital)

LD

IN7

Variable

Optional

Remote Device Reset


(digital)

LD

IN8

Variable

Optional

Stop Permissive
(digital)

LD

OUT1

Variable

Required

Start Output (digital)

LD

OUT2

Variable

Required

Stop Output (digital)

LD

ALRM

Variable

Optional

Device Alarm (digital)

LD

STAT

Variable

Optional

Alarm and Mode


Status (packed)

LP

RUN

Variable

Optional

Total Run Time


(analog)

LA

Data Init

Required

Tune the total runtime


value

RUNT

REF_1100

R1-Real

185

5.34 DIGITAL DEVICE


Truth Table
R E AD Y S T A T U S

RUNNING STATUS

MOTOR STATE

Set

Set

Running

Set

Reset

Ready

Reset

Set

Failed

Reset

Reset

Unavailable

Output Status Bits


BIT

186

DESCRIPTION
0

Failed to Stop

Failed to Start

Not Applicable

Not Applicable

Not Applicable

Device Unavailable

Device Deviation

Device Failed

Last Command Stop

Last Command Start

10

Not Applicable

11

Not Applicable

12

Not Applicable

13

Device Off

14

Device in Manual

15

Device in Auto

REF_1100

5.34 DIGITAL DEVICE

5.34.5 MOTOR 2-SPD (Two Speed or Bi-Directional Controlled Motor)


Description
The Two-Speed or Bi-Directional Controlled Motor has the option of either running fast or slow, or
running forward or backward when in operation. This motor has the option of accepting start or
stop commands from either the control logic or the operator.
When the device is in AUTO mode, the algorithm accepts control commands from the Remote
Fast/Forward Start (IN4), Remote Slow/Reverse Start (IN5), and Remote Stop (IN6) inputs. When
the device is in MANUAL mode, the algorithm accepts the control commands Stop, Fast/Forward
Start, and Slow/Reverse Start from the Operator Keyboard. Whenever a command is processed
in either AUTO or MANUAL mode, the outputs (OUT1, OUT2, and OUT3) are set accordingly for
the duration of the time delay previously set in the Control Builder.
The Stop Permissive (IN10) must be set to allow the motor to be stopped. The Stop Permissive is
automatically set when no input is connected to IN10. This motor may be commanded to change
direction or speed without first being stopped. Refer to the Algorithm Definitions table for the list of
inputs and outputs.
The digital alarm bit is set when one of the following occurs:

The device is in the Failed state.

The device is in the Unavailable state.

The device changes running states without being commanded to do so.

The device fails to start or stop.

When the device fails to start or stop, the alarm triggers, but the device stays in the current mode
and continues looking for the combination of Running and Ready. When this combination has
been detected, the alarm is reset and the device continues operating in a normal condition. All
other alarms put the device in OFF mode. See the Truth table for the states of the motor.
The Two Speed or Bi-Directional Controlled Motor also has a status packed point that displays
which alarm has been set, the last command, and which mode it is currently in. See Output Status
Bits for the list of status bits.
Functional Symbol

REF_1100

187

5.34 DIGITAL DEVICE


Algorithm Record Type = LC
Algorithm Definitions

188

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

DLY1

C0-Integer

DLY2

MIN.
POINT
RECORD

Required

30

Tuning Diagram
Number

Tuning
Constant

Required

Time for Ready after


Stop

C1-Integer

Tuning
Constant

Required

Time for Stop

DLY3

C2-Integer

Tuning
Constant

Required

Time for Start


Fast/Forward

DLY4

C3-Integer

Tuning
Constant

Required

Time for Start


Slow/Reverse

BASE

C6-Integer

Tuning
Constant

Optional

Time base for total run:


0 = Hours
1 = Minutes
2 = Seconds

IN1

Variable

Required

Ready Contact (digital)

LD

IN2

Variable

Required

Fast/Forward Running
Contact (digital)

LD

IN3

Variable

Required

Slow/Reverse Running
Contact (digital)

LD

IN4

Variable

Optional

Remote Fast/Forward
Start (digital)

LD

IN5

Variable

Optional

Remote Slow/Reverse
Start (digital)

LD

IN6

Variable

Optional

Remote Stop (digital)

LD

IN7

Variable

Optional

Remote Auto (digital)

LD

IN8

Variable

Optional

Remote Manual
(digital)

LD

IN9

Variable

Optional

Remote Device Reset


(digital)

LD

IN10

Variable

Optional

Stop Permissive
(digital)

LD

OUT1

Variable

Required

Fast/Forward Start
Output (digital)

LD

OUT2

Variable

Required

Slow/Reverse Start
Output (digital)

LD

OUT3

Variable

Required

Stop Output (digital)

LD

ALRM

Variable

Optional

Device Alarm (digital)

LD

REF_1100

5.34 DIGITAL DEVICE

N AM E

LC ALG.
RECORD
FIELD

STAT

RUN
RUNT

R1 - Real

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

Variable

Optional

Data Init

Required

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Alarm and Mode


Status (packed)

LP

Total Run Time


(analog)

LA

Tune the total runtime


value.

Truth Table
RE ADY STATUS

F AST/FORWARD
RUNNING STATUS

SLOW/REVERSE
RUNNING STATUS

MOTOR STATE

Set

Set

Set

Not Applicable

Set

Set

Reset

Running Fast or
Forward

Set

Reset

Set

Running Slow or
Reverse

Set

Reset

Reset

Ready

Reset

Set

Set

Failed

Reset

Set

Reset

Failed

Reset

Reset

Set

Failed

Reset

Reset

Reset

Unavailable

Output Status Bits


BIT

REF_1100

DESCRIPTION
0

Failed to Stop

Failed to Start Fast/Forward

Failed to Start Slow/Reverse

Not Applicable

Not Applicable

Device Unavailable

Device Deviation

Device Failed

Last Command Stop

Last Command Start Fast/Forward

10

Last Command Start Slow/Reverse

11

Not Applicable

12

Not Applicable

189

5.34 DIGITAL DEVICE

BIT

190

DESCRIPTION
13

Device Off

14

Device in Manual

15

Device in Auto

REF_1100

5.34 DIGITAL DEVICE

5.34.6 MOTOR 4-SPD (Two Speed and Bi-Directional Controlled Motor)


Description
The Two-Speed and Bi-Directional Controlled Motor has the option of accepting start or stop
commands from either the control logic or the operator. This motor has the option of running in
any one of the following four states:

Fast and forward

Fast and reverse

Slow and forward

Slow and reverse

When the device is in AUTO mode, the algorithm accepts control commands from the Remote
Fast Forward Start (IN6), Remote Slow Forward Start (IN7), Remote Fast Reverse Start (IN8),
Remote Slow Reverse Start (IN9), and Remote Stop (IN10) inputs.
When the device is in MANUAL mode, the algorithm accepts the control commands Stop, Fast
Forward Start, Slow Forward Start, Fast Reverse Start, and Slow Reverse Start from the Operator
Keyboard. Whenever a command is processed in either AUTO or MANUAL mode, the outputs
(OUT1, OUT2, OUT3, OUT4, and OUT5) are set accordingly for the duration of the time delay
previously set in the Control Builder.
The Stop Permissive (IN14) must be set to allow the motor to be stopped. The Stop Permissive is
automatically set when no input is connected to IN14. This motor may be commanded to change
direction or speed without first being stopped. See the Algorithm Definitions table for the list of
inputs and outputs.
The digital alarm bit is set when one of the following occurs:

The device is in the Failed state.

The device is in the Unavailable state.

The device changes running states without being commanded to do so.

The device fails to start or stop.

When the device fails to start or stop, the alarm triggers, but the device stays in the current mode
and continues looking for the proper combination of Running and Ready. When this combination
is found, the alarm is reset and the device continues operating in a normal condition. All other
alarms put the device in OFF mode. See the Truth table for the states of the motor.
The Two-Speed and Bi-Directional Controlled Motor also has a status packed point that displays
which alarm has been set, the last command, and which mode it is currently in. See the Output
Status Bits table for the list of status bits.

REF_1100

191

5.34 DIGITAL DEVICE

Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init.

Required

30

Tuning Diagram
Number

DLY1

C0-Integer

Tuning
Constant

Required

Time for Ready after


Stop

DLY2

C1-Integer

Tuning
Constant

Required

Time for Stop

DLY3

C2-Integer

Tuning
Constant

Required

Time for Fast Forward


Start

DLY4

C3-Integer

Tuning
Constant

Required

Time for Slow Forward


Start

DLY5

C4-Integer

Tuning
Constant

Required

Time for Fast Reverse


Start

DLY6

C5-Integer

Tuning
Constant

Required

Time for Slow Reverse


Start

BASE

C6-Integer

Tuning
Constant

Optional

Time base for total run.

0 = Hours
1 = Minutes
2 = Seconds

RUNT
IN1

192

R1 - Real
-

Data Init

Required

Tune the total runtime


value.

Variable

Required

Ready Contact (digital)

LD

REF_1100

5.34 DIGITAL DEVICE

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN2

Variable

Required

Fast Forward Running


Contact (digital)

LD

IN3

Variable

Required

Slow Forward Running


Contact (digital)

LD

IN4

Variable

Required

Fast Reverse Running


Contact (digital)

LD

IN5

Variable

Required

Slow Reverse Running


Contact (digital)

LD

IN6

Variable

Optional

Remote Fast Forward


Start (digital)

LD

IN7

Variable

Optional

Remote Slow Forward


Start (digital)

LD

IN8

Variable

Optional

Remote Fast Reverse


Start (digital)

LD

IN9

Variable

Optional

Remote Slow Reverse


(digital)

LD

IN10

Variable

Optional

Remote Stop (digital)

LD

IN11

Variable

Optional

Remote Auto (digital)

LD

IN12

Variable

Optional

Remote Manual
(digital)

LD

IN13

Variable

Optional

Remote Device Reset


(digital)

LD

IN14

Variable

Optional

Stop Permissive
(digital)

LD

OUT1

Variable

Required

Fast Forward Start


Output (digital)

LD

OUT2

Variable

Required

Slow Forward Start


Output (digital)

LD

OUT3

Variable

Required

Fast Reverse Start


Output (digital)

LD

OUT4

Variable

Required

Slow Reverse Start


Output (digital)

LD

OUT5

Variable

Required

Stop Output (digital)

LD

ALRM

Variable

Optional

Device Alarm (digital)

LD

STAT

Variable

Optional

Alarm and Mode


Status (packed)

LP

RUN

Variable

Optional

Total Run Time


(analog)

LA

REF_1100

193

5.34 DIGITAL DEVICE


Truth Table
RE ADY
STATUS

F AST
FORWARD
RUNNING
STATUS

SLOW
FORWARD
RUNNING
STATUS

F AST
REVERSE
RUNNING
STATUS

SLOW
REVERSE
RUNNING
STATUS

MOTOR STATE

Set

Set

Set

Set

Set

Not Applicable

Set

Set

Set

Set

Reset

Not Applicable

Set

Set

Set

Reset

Set

Not Applicable

Set

Set

Set

Reset

Reset

Not Applicable

Set

Set

Reset

Set

Set

Not Applicable

Set

Set

Reset

Set

Reset

Not Applicable

Set

Set

Reset

Reset

Set

Not Applicable

Set

Set

Reset

Reset

Reset

Running Fast
Forward

Set

Reset

Set

Set

Set

Not Applicable

Set

Reset

Set

Set

Reset

Not Applicable

Set

Reset

Set

Reset

Set

Not Applicable

Set

Reset

Set

Reset

Reset

Running Slow
Forward

Set

Reset

Reset

Set

Set

Not Applicable

Set

Reset

Reset

Set

Reset

Running Fast
Reverse

Set

Reset

Reset

Reset

Set

Running Slow
Reverse

Set

Reset

Reset

Reset

Reset

Ready

Reset

Set

Set/Reset

Set/Reset

Set/Reset

Failed

Reset

Set/Reset

Set

Set/Reset

Set/Reset

Failed

Reset

Set/Reset

Set/Reset

Set

Set/Reset

Failed

Reset

Set/Reset

Set/Reset

Set/Reset

Set

Failed

Reset

Reset

Reset

Reset

Reset

Unavailable

Output Status Bits


BIT

194

DESCRIPTION
0

Failed to Stop

Failed to Start Fast Forward

Failed to Start Slow Forward

Failed to Start Fast Reverse

Failed to Start Slow Reverse

Device Unavailable

REF_1100

5.34 DIGITAL DEVICE

BIT

REF_1100

DESCRIPTION
6

Device Deviation

Device Failed

Last Command Stop

Last Command Start Fast Forward

10

Last Command Start Slow Forward

11

Last Command Start Fast Reverse

12

Last Command Start Slow Reverse

13

Device Off

14

Device in Manual

15

Device in Auto

195

5.34 DIGITAL DEVICE

5.34.7 VALVE (Controlled Valve)


Description
The Controlled Valve has the option of accepting commands from either the control logic or the
operator.
When the device is in AUTO mode, the algorithm accepts control commands from the Remote
Open (IN3) and Remote Close (IN4) inputs. When the device is in MANUAL mode, the algorithm
accepts the control commands Close and Open from the Operator Keyboard. Whenever a
command is processed in either AUTO or MANUAL mode, the outputs (OUT1 and OUT2) are set
accordingly for the duration of the time delay previously set in the Control Builder.
The Open and Close Permissives (IN8 and IN9) must be set to allow the valve to be opened or
closed. The Open and Close Permissives are automatically set when no input is connected to IN8
or IN9. See the Algorithm Definitions table for the list of inputs and outputs.
The digital alarm bit is set when one of the following occurs:

The device is in the Failed state.

The device opens or closes without being commanded to do so.

The device fails to open or close.

When the device fails to open or close, the alarm triggers, but the device stays in the current
mode and continues looking for the proper Open and Close input combination. When this
combination is found, the alarm is reset, and the device continues operating in a normal condition.
All other alarms put the device in OFF mode. See the Truth table for the states of the valve.
The Controlled Valve also has a status packed point that displays which alarm has been set, the
last command, and which mode it is currently in. See the Output Status Bits table for the list of the
status bits.
Functional Symbol

196

REF_1100

5.34 DIGITAL DEVICE


Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init.

DLY1

C0-Integer

DLY2

C1-Integer

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Required

30

Tuning Diagram
Number

Tuning
Constant

Required

Time for Close

Tuning
Constant

Required

(should be greater
than loop time)
1

Time for Open


(should be greater
than loop time)

IN1

Variable

Required

Open Contact (digital)

LD

IN2

Variable

Required

Close Contact (digital)

LD

IN3

Variable

Optional

Remote Open (digital)

LD

IN4

Variable

Optional

Remote Close (digital)

LD

IN5

Variable

Optional

Remote Auto (digital)

LD

IN6

Variable

Optional

Remote Manual
(digital)

LD

IN7

Variable

Optional

Remote Device Reset


(digital)

LD

IN8

Variable

Optional

Open Permissive
(digital)

LD

IN9

Variable

Optional

Close Permissive
(digital)

LD

OUT1

Variable

Required

Open Output (digital)

LD

OUT2

Variable

Required

Close Output (digital)

LD

ALRM

Variable

Optional

Device Alarm (digital)

LD

STAT

Variable

Optional

Alarm and Mode


Status (packed)

LP

Truth Table
OPEN STATUS

REF_1100

CLOSED STATUS

V ALVE STATE

Set

Set

Moving

Set

Reset

Open

Reset

Set

Closed

Reset

Reset

Failed

197

5.34 DIGITAL DEVICE

Output Status Bits


BIT

198

DESCRIPTION
0

Failed to Close

Failed to Open

Not Applicable

Not Applicable

Not Applicable

Not Applicable

Device Deviation

Device Failed

Last Command Close

Last Command Open

10

Not Applicable

11

Not Applicable

12

Not Applicable

13

Device Off

14

Device in Manual

15

Device in Auto

REF_1100

5.35 DIVIDE

5.35 DIVIDE
Description
The DIVIDE algorithm divides two gained and biased inputs. The output of the DIVIDE algorithm
is the result of the gained and biased IN1 divided by the gained and biased IN2. If the gained and
biased IN2 is zero, or an invalid real number, then the output is either the high or low limit
according to the sign of the IN1.
Note: If the algorithm receives an invalid value as the input, or if it calculates an invalid value as
the output, the drop is placed into alarm.
Functional Symbol

Tracking Signals
Tracking and limiting are done through signals passed in the third status field of an analog point to
the algorithm. This algorithm takes the following action in response to the information found in the
input signal TRIN:
BIT

REF_1100

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

No action

Passed through**

20

Raise inhibit

No action

Passed through**

21

Conditional Track

Implemented

Passed through***

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

199

5.35 DIVIDE

BIT
31

DESCRIPTION

ACTION

TOUT SIGNAL

High limit reached

No action

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the
definitions given in Setting Tracking Signals (see page 16).
*** If the algorithm is being told to track, then the Conditional track bit is ignored.
Otherwise, the value of the conditional track bit is transferred to all output track points.
If the Conditional Track bit is set in the track input point, the analog value of all output
track points is calculated based on the analog value of the track input point.

The high and low limit flags and the tracking signals from the algorithms are outputs to TOUT, to
be used for display and by an upstream algorithm. If the output value is invalid, the quality of OUT
is set BAD otherwise, the quality of OUT is set to the worst quality of the two inputs when not in
tracking mode. When tracking, the quality is set to the quality of the track input variable.
Note: If the algorithm generates an inverted track output, the IN1 value is used as the track
output, unless it is invalid, The track output value is not updated if both the calculated track
output and INI input values are inverted.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init.

Required

81

Tuning Diagram
Number

IN1G

R1-Real

Tuning
Constant

Required

1.0

Gain (+ or -) on input 1

R2-Real

Tuning
Constant

Required

0.0

Bias (+ or -) on input 2

R3-Real

Tuning
Constant

Required

1.0

Gain on input 2

R4-Real

Tuning
Constant

Required

0.0

Bias on input 2

TPSC

R5-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

BTSC

R6-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point

TRAT

R7-Real

Tuning
Constant

Required

2.5

Track ramp rate (units


per second)

Variable

Required

(NUMG)
IN1B
(NUMB)
IN2G
(DENG)
IN2B
(DENB)

NUM
(IN1)

200

DEFAULT
VALUE

DESCRIPTION

Input (analog)

MIN.
POINT
RECORD

LA

REF_1100

5.35 DIVIDE

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

TOUT

Variable

Required

Track output value,


mode & status for input
variable

LA

DEN

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

TRIN

Variable

Optional

Tracking analog value,


tracking and limiting
mode signals input
variance

LA

(IN2)

Function

REF_1100

201

5.36 DROPSTATUS

5.36 DROPSTATUS
Description
The DROPSTATUS algorithm accesses and outputs the contents of any record field in the Drop
Status Record (DU) for a particular Controller. To access the contents of a record field, the field
number must be specified. If an invalid field number is entered, zero is written to the AOUT and
POUT output points.
The data in the DU record field is output as a packed point. If specified, the contents of the record
field can also be output as an analog value. (See Ovation Record Types Reference Manual.)
Note: For Ovation 3.2 systems and later, the DROPSTATUS algorithm will allow any DU record
to be used as an input into the drop status.
Functional Symbol

Field Numbers
FIELD NUMBER

202

FIELD N AME

FA

FB

FC

FK

FS

FO

HC

TA

CT

10

RT

11

LN

12

E5

13

E6

14

GD

15

GL

16

GI

17

GG

REF_1100

5.36 DROPSTATUS

FIELD NUMBER

FIELD N AME

18

GH

19

NC

20

FF

21

JU

22

U4

23

U5

24

U6

25

U7

26

KM

27

VE

28

K0

29

K1

30

TR

31

NE

32

IS

33

IE

34

OP

35

OE

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

RECD

G0 Integer

Data Init.

Required

The field number in the


drop record.

AOUT

Variable

Optional

Output (analog);
contents of the DU
record field.

LA

POUT

Variable

Required

Output (packed);
contents of the DU
record field.

LP

DUID

Variable

Optional

Input DU record

DU

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD
-

203

5.37 DRPI1A

5.37 DRPI1A
Description
The DRPI1A algorithm converts the gray codes (IN1) to actual rod positions. On the first pass, the
rod position is always a zero value with BAD quality. For control rods, the calculation for
converting gray codes into steps is converting the gray code to a decimal number and adding the
two gray codes together and multiplying the sum by STEP. If there is an error reading either gray
code, or if the gray code is above the maximum range, only the good code is used in the
calculation and the resultant quality is set to FAIR. If gray code A is BAD, then the rod position is
equal to: ((converted gray code B times 2 times STEP) + (1/2 times STEP)). If the gray code B is
BAD, then the rod position is equal to: ((converted gray code A times 2 times STEP) - (1/2 times
STEP)). If both gray codes are BAD or above the limits, then the rod position is set to zero with
BAD quality.
If the rod is a shutdown rod and the converted gray codes added together equal BOTS, then the
rod position is equal to GAP and POOR quality. If the converted gray codes added together is
greater than BOTS, then the rod position is equal to TOPG plus the calculated position.
If bit 12 of IN1 is set, then the algorithm sets a two-second timer. When the timer expires, the
algorithm saves the current rod being scanned. During the first scan of any rod after the two
second timer has expired, a rod value of zero is allowed. At all other times a zero is not valid. If a
zero is not allowed, then any zero reading is ignored by setting the rod number (RODZ) to zero.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

204

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init

MNIN

R1-Real

GAP

MIN.
POINT
RECORD

Required

93

Tuning Diagram
Number

Tuning
Constant

Required

0.0

Maximum number of
steps per rod

R2-Real

Tuning
Constant

Required

0.0

Shutdown Rod Gap

TOPG

R3-Real

Tuning
Constant

Required

0.0

Shutdown Top Gap

FUEL

R4-Real

Tuning
Constant

Required

0.0

Maximum Steps for


Rapid Refuel

REF_1100

5.37 DRPI1A

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

BOTS

G0-Integer

Tuning
Constant

Required

Number of Bottom Coils


for Shutdown Rod

MAXS

G1-Integer

Tuning
Constant

Required

Maximum Coils in
Shutdown Rod

STEP

G2-Integer

Tuning
Constant

Required

Number of Steps
Between Coils

Variable

Required

Input (packed):

IN1

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

LP

Bits 0 - 4 = Gray
Bit 5 = Gray Code A
Error Bit
Bits 6 - 10 = Gray Code
B
Bit 11 = Gray Code B
Error Bit
Bit 12 = CD24 Monitor.
Indicator that zero value
can be accepted.
Bit 13 = Rapid Refuel in
progress
ROD

Variable

Required

Rod Number Input


(analog)

LA

SHUT

Variable

Required

Shutdown Control Rod

LD, LP

Input (digital)
TRIP

Variable

Optional

Unit Trip Input (digital)

LD, LP

OUT

Variable

Required

Rod Position Output


(analog)

LA

RODZ

Variable

Required

Rod Number or zero

LA

Output (analog)

REF_1100

205

5.38 DVALGEN

5.38 DVALGEN
Description
The DVALGEN algorithm initializes a digital point. For the DVALGEN algorithm, the output is the
digital value stored in the tuning constant (VALU). This value can be used to force any digital
input to any algorithm to either a TRUE or FALSE statement that remains fixed unless changed
by a tuning function.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LUInteger

Data Init.

VALU

R1-Real

OUT

DEFAULT
VALUE

DESCRIPTION

Required

69

Tuning Diagram
Number

Tuning
Constant

Required

1.0

Real value
(0.0 = FALSE;
1.0 or any other
non-zero,
real number = TRUE)

Variable

Required

Output (digital)

MIN.
POINT
RECORD

LD, LP

Function
OUT = VALUE

206

REF_1100

5.39 FACEPLATE

5.39 FACEPLATE
Description
The FACEPLATE algorithm is a generic algorithm used to collect all inputs necessary for a
graphic faceplate. Its purpose is to reduce the amount of data needed by the graphic designer
when adding faceplates to a process diagram or window.
You need to pass only the name of the FACEPLATE algorithm to a graphic macro. The graphic
macro then retrieves all relevant input signals from the FACEPLATE algorithm and displays the
data accordingly.
The FACEPLATE algorithm sequences through all arguments and checks for a connection. It
then stores the system IDs for those connected points in the appropriate record fields of the
FACEPLATE algorithm.
The algorithm can have a maximum of two control algorithm points and up to 30 input points,
which can be analog, digital, or packed.
In addition to the generic template, two other templates exist for this algorithm.

DIGITAL DEVICE template (see page 210).

MASTATION template (see page 214).

Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

TYPE

X1 - Byte

Data Init

Required

WIN

XU Integer

Data Init

MAC

XR Integer

TTL1

TT - ASCII

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Faceplate type

--

Required

Default window number

--

Data Init

Required

Default macro number

--

Data Init

Optional

TITLE

Title

--

207

5.39 FACEPLATE

208

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

ALG1

G0

Variable

Required

ALG2

G1

Variable

PM1

B0

PM2

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

--

Control algorithm #1

LC

Optional

--

Control algorithm #2

LC

Variable

Optional

--

Input #1. Could be


analog, digital, or
packed.

LA, LD,
LP

B1

Variable

Optional

--

Input #2. Could be


analog, digital, or
packed.

LA, LD,
LP

PM3

B2

Variable

Optional

--

Input #3. Could be


analog, digital, or
packed.

LA, LD,
LP

PM4

YU

Variable

Optional

--

Input #4. Could be


analog, digital, or
packed.

LA, LD,
LP

PM5

B4

Variable

Optional

--

Input #5. Could be


analog, digital, or
packed.

LA, LD,
LP

PM6

B5

Variable

Optional

--

Input #6. Could be


analog, digital, or
packed.

LA, LD,
LP

PM7

B6

Variable

Optional

--

Input #7. Could be


analog, digital, or
packed.

LA, LD,
LP

PM8

B7

Variable

Optional

--

Input #8. Could be


analog, digital, or
packed.

LA, LD,
LP

PM9

B8

Variable

Optional

--

Input #9. Could be


analog, digital, or
packed.

LA, LD,
LP

PM10

B9

Variable

Optional

--

Input #10. Could be


analog, digital, or
packed.

LA, LD,
LP

PM11

C0

Variable

Optional

--

Input #11. Could be


analog, digital, or
packed.

LA, LD,
LP

PM12

C1

Variable

Optional

--

Input #12. Could be


analog, digital, or
packed.

LA, LD,
LP

PM13

C2

Variable

Optional

--

Input #13. Could be


analog, digital, or
packed.

LA, LD,
LP

PM14

C3

Variable

Optional

--

Input #14. Could be


analog, digital, or
packed.

LA, LD,
LP

PM15

C4

Variable

Optional

--

Input #15. Could be


analog, digital, or
packed.

LA, LD,
LP

REF_1100

5.39 FACEPLATE

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

PM16

C5

Variable

Optional

PM17

C6

Variable

PM18

C7

PM19

DESCRIPTION

MIN.
POINT
RECORD

--

Input #16. Could be


analog, digital, or
packed.

LA, LD,
LP

Optional

--

Input #17. Could be


analog, digital, or
packed.

LA, LD,
LP

Variable

Optional

--

Input #18. Could be


analog, digital, or
packed.

LA, LD,
LP

C8

Variable

Optional

--

Input #19. Could be


analog, digital, or
packed.

LA, LD,
LP

PM20

YT

Variable

Optional

--

Input #20. Could be


analog, digital, or
packed.

LA, LD,
LP

PM21

D0

Variable

Optional

--

Input #21. Could be


analog, digital, or
packed.

LA, LD,
LP

PM22

YQ

Variable

Optional

--

Input #22. Could be


analog, digital, or
packed.

LA, LD,
LP

PM23

D2

Variable

Optional

--

Input #23. Could be


analog, digital, or
packed.

LA, LD,
LP

PM24

YP

Variable

Optional

--

Input #24. Could be


analog, digital, or
packed.

LA, LD,
LP

PM25

D4

Variable

Optional

--

Input #25. Could be


analog, digital, or
packed.

LA, LD,
LP

PM26

D5

Variable

Optional

--

Input #26. Could be


analog, digital, or
packed.

LA, LD,
LP

PM27

D6

Variable

Optional

--

Input #27. Could be


analog, digital, or
packed.

LA, LD,
LP

PM28

YN

Variable

Optional

--

Input #28. Could be


analog, digital, or
packed.

LA, LD,
LP

PM29

D8

Variable

Optional

--

Input #29. Could be


analog, digital, or
packed.

LA, LD,
LP

PM30

D9

Variable

Optional

--

Input #30. Could be


analog, digital, or
packed.

LA, LD,
LP

REF_1100

DEFAULT
VALUE

209

5.39 FACEPLATE

5.39.1 FACEPLATE -- DIGITAL DEVICE template


Description
This template should be used with the DIGITAL DEVICE algorithm. The following symbols show
an example of how this template could be used.

Note: Default symbols are not available for this template. Users are responsible for generating
their own symbols since the interface is defined within the individual graphics macros.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

TYPE

X1 - Byte

Data Init

WIN

XU Integer

MAC

MIN.
POINT
RECORD

Required

Faceplate type

--

Data Init

Required

9100

Default window number

--

XR Integer

Data Init

Required

9100

Default macro number

--

CNTL

X2 - Byte

Data Init

Required

Type of control to be
implemented:
Start/Stop Normally
Open Contact
Start/Stop Normally
Closed Contact
Open/Closed Normally
Open Contact
Open/Closed Normally
Closed Contact

--

FBI

X3 - Byte

Data Init

Required

Analog feedback for


travel:

--

YES: Use feedback


NO: Do not use feedback

210

REF_1100

5.39 FACEPLATE

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

TTL1

TT - ASCII

Data Init

Optional

TITLE

ALG1

G0

Variable

Required

--

Control algorithm #1

LC

ALG2

G1

Variable

Optional

--

Control algorithm #2

LC

TVST

B0

Variable

Optional

--

Analog travel feedback


status.

LA

PK12

B1

Variable

Optional

--

Feedback for P-key 1


and 2 -- 1-3 Element

LA

PK3

B2

Variable

Optional

--

Feedback for P-key 3 Auto

LA

IND

C0

Variable

Optional

--

1-3 Element indication

LD

DEV1

D0

Variable

Optional

--

Device LP point name for


feedback

LP

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Title

--

211

5.39 FACEPLATE
Example Using the Digital Device template
For the digital faceplate values to be displayed in a graphic using the FACEPLATE algorithm, use
the following example to place code in the main screen diagram.
In the DIAGRAM section (OCB010F001 will be replaced by the name of your faceplate):
********
Algorithm

Start Process Point Mapping of Digital Faceplate


*********

*** Digital Faceplate Algorithm Name = OCB010F001


* Analog feedback for Travel Status
DEF_VARIABLE LOCAL TVST SYSID
SET_VARIABLE l:TVST OCB010F001 B0

* Feedback for P-KEY 1&2 - 1-3 Element


DEF_VARIABLE LOCAL PK12 SYSID
SET_VARIABLE l:PK12 OCB010F001 B1

* Feedback for P-KEY 3 - AUTO


DEF_VARIABLE LOCAL PK3 SYSID
SET_VARIABLE l:PK3 OCB010F001 B2

* 1-3 Element Indication


DEF_VARIABLE LOCAL IND SYSID
SET_VARIABLE l:IND OCB010F001 C0

* Device LP Point Name for Feedback


DEF_VARIABLE LOCAL DEV1 SYSID
SET_VARIABLE l:DEV1 OCB010F001 D0

212

REF_1100

5.39 FACEPLATE

In the BACKGROUND section (Optional):


TEXT 7346 1996

"TVST B0" HORZ VECTOR_OVER 108 351 1

TEXT 7345 2525

"PK12 B1" HORZ VECTOR_OVER 108 351 1

TEXT 7330 3031

"PK3 B2" HORZ VECTOR_OVER 108 351 1

TEXT 7329 3647

"IND C0" HORZ VECTOR_OVER 108 351 1

TEXT 7342 4198

"DEV1 D0" HORZ VECTOR_OVER 108 351 1

In the FOREGROUND section (to display specific values of the record field of the Faceplate
algorithm):
PROCESS_PT 5506 2017 15 -1 RIGHT OFF HORZ VECTOR_OVER 108 351
1 L:TVST AV
PROCESS_PT 5520 2543 15 -1 RIGHT OFF HORZ VECTOR_OVER 108 351
1 L:PK12 AV
PROCESS_PT 5521 3069 15 -1 RIGHT
351 1 L:PK3 AV

OFF HORZ VECTOR_OVER 108

PROCESS_PT 5521 3661 15 -1 RIGHT OFF HORZ VECTOR_OVER 108 351


1 L:IND DS
PROCESS_PT 5535 4231 15 -1 HEX OFF HORZ VECTOR_OVER 108 351
1 L:DEV1 A2

To call the faceplate Macro (49100 in this case) using the one $D1 point - the LC faceplate
algorithm name.
Macro 49100 55 8201 0.318631 0.489620 1 0 3 1 3 0
\OCB010F001.UNIT0@FE222\
"Digital Faceplate Alg." "FE222-Drop 14 - Using Macro 49100"
"OCB010F001"
28 28 2 3 0 0
See Ovation Graphics Language Reference Manual for more information on graphic commands.

REF_1100

213

5.39 FACEPLATE

5.39.2 FACEPLATE -- MASTATION template


Description
This template should be used with the MASTATION algorithm. The following symbols show an
example of how this template could be used.

Note: Default symbols are not available for this template. Users are responsible for generating
their own symbols since the interface is defined within the individual graphics macros.
Algorithm Record Type = LC
Algorithm Definitions

214

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

TYPE

X1 - Byte

Data Init

Required

Faceplate type

--

WIN

XU - Integer

Data Init

Required

9000

Default window number

--

MAC

XR - Integer

Data Init

Required

9000

Default macro number

--

TTL1

TT - ASCII

Data Init

Optional

TITLE

Title

--

ALG1

G0

Variable

Required

--

Control algorithm #1

LC

ALG2

G1

Variable

Optional

--

Control algorithm #2

LC

PV

B0

Variable

Optional

--

Process variable

LA

DEMD

B1

Variable

Optional

--

Demand

LA

BIAS

B2

Variable

Optional

--

Bias

LA

STPT

YU

Variable

Optional

--

Setpoint

LA

OUT

B4

Variable

Optional

--

Output

LA

SMOD

B5

Variable

Optional

--

Mode word for setpoint

LA

IND

C0

Variable

Optional

--

1 - 3 element indication

LD

MODE

D0

Variable

Optional

--

Input mode point

LP

REF_1100

5.40 FIELD

5.40 FIELD
Description
The FIELD algorithm is used only with the hardware analog output variable points. This algorithm
checks the value against the IO card limits and sets the appropriate bits in the track output point.
It should be used instead of output analog hardware I/O connectors in applications involving
interfaces to control elements (for example, valves and dampers).
The output digital point (FAIL) is TRUE when the algorithm detects a hardware error on the I/O
card. This algorithm is designed to read the value from the point record and output value TOUT
on the first pass.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU

Data Init.

Required

Tuning Diagram
Number

MIN.
POINT
RECORD
-

IN1

Variable

Required

Input (analog)

LA

TOUT

Variable

Required

Track Output Value


Mode and Status For
Input Variable (analog)

LA

Variable

Optional

Hardware Output
(analog)

LA

Variable

Optional

Hardware Error Point


(digital)

LD, LP

HWPT
FAIL
1

REF_1100

You cannot scan remove the HWPT point.

215

5.40 FIELD
Tracking Signals
The high and low limits flags and tracking signals from the algorithm are output to TOUT, to be
used for display and by an upstream algorithm.
The following information is output by this algorithm in the TOUT signal.
BIT

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

TRUE when output value


is at low limit of the card

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

Implemented

TRUE when output value


is at the low limit of the
card**

20

Raise inhibit

Implemented

TRUE when output value


is at high limit of the
card**

21

Conditional Track

No action

Not used

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Supervisory mode

No action

Not used

28

Cascade mode

No action

Not used

29

DDC mode

No action

Not used

30

Low limit reached

Implemented

Low limit reached

31

High limit reached

Implemented

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the
definitions given in Setting Tracking Signals (see page 16).

216

REF_1100

5.41 FIFO

5.41 FIFO
Description
The FIFO algorithm provides a basic First In - First Out operation. The order in which any of the
16 digital inputs transition from FALSE to TRUE is preserved. The order is stored using the input
number of the associated input (that is, 1 for IN1, 2 for IN2, 3 for IN3, and so forth).
Initially, the value of the output is zero. If the FIFO is empty, the output is also zero. For each
successive FALSE to TRUE Transition of the rotate (RTAT) input, the oldest input number stored
in the FIFO is removed from internal storage and that numerical value is written to the output
(OUT). Note that the output is considered separate from the actual FIFO.
The point retains the value until either the rotate (RTAT) or the clear (CLR) input transitions from
FALSE to TRUE. A FALSE to TRUE transition on the (RTAT) input causes the oldest entry in the
FIFO to be removed from the FIFO and placed in the output (OUT). At this point, the value in the
(OUT) variable is no longer included in the queue.
If multiple inputs transition from FALSE to TRUE on the same execution cycle of the Controller,
then they are ordered according to their numerical number. For example, IN1 is placed in the
FIFO first and thus is rotated out first.
A FALSE to TRUE transition on the clear (CLR) input causes the output and all the internal FIFO
entries to be set to zero. As long as the clear (CLR) input remains TRUE, the algorithm ignores all
the inputs and thus does not operate.
The FIFO is considered full when all 16 inputs have made a transition from FALSE to TRUE
without any subsequent FALSE to TRUE transition on the rotate (RTAT) input. When this full
condition exists, any further FALSE to TRUE transitions of any of the inputs are ignored until at
least one of the stored values is rotated out of the FIFO.
The FLAG output is set TRUE when the FIFO is NOT empty.
Note: The FIFO values are stored in the algorithm record fields G0-G9, B0-B5.

REF_1100

217

5.41 FIFO

Functional Symbol

Algorithm Record Type= LC


Algorithm Definitions
N AM E

218

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Digital Input

LD

IN2

Variable

Optional

Digital Input

LD

IN3

Variable

Optional

Digital Input

LD

IN4

Variable

Optional

Digital Input

LD

IN5

Variable

Optional

Digital Input

LD

IN6

Variable

Optional

Digital Input

LD

IN7

Variable

Optional

Digital Input

LD

IN8

Variable

Optional

Digital Input

LD

IN9

Variable

Optional

Digital Input

LD

IN10

Variable

Optional

Digital Input

LD

IN11

Variable

Optional

Digital Input

LD

IN12

Variable

Optional

Digital Input

LD

IN13

Variable

Optional

Digital Input

LD

IN14

Variable

Optional

Digital Input

LD

REF_1100

5.41 FIFO

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN15

Variable

Optional

Digital Input

LD

IN16

Variable

Optional

Digital Input

LD

RTAT

Variable

Required

Digital Rotate FIFO


Input

LD

CLR

Variable

Required

Digital Clear FIFO


Input

LD

OUT

Variable

Required

Analog output
variable

LA

FLAG

Variable

Optional

Digital output
variable

LD

REF_1100

219

5.42 FIRSTOUT

5.42 FIRSTOUT
Description
The FIRSTOUT algorithm monitors up to 16 digital inputs and provides an indication of the first
digital input to transition from zero to one. The algorithm output is a packed group point whose 16
bits correspond to each of the 16 digital inputs. If more than 16 inputs need to be monitored,
multiple algorithms can be cascaded together. The resolution of the algorithm is equal to the
period of the control task in which it executes.
Note: The quality values of the digital inputs are not propagated to the digital outputs.
Functional Symbol

220

REF_1100

5.42 FIRSTOUT
Algorithm States
The FIRSTOUT algorithm operates in three states: armed, tripped and disabled.
In the disabled state, the algorithm does not operate. In the armed state, the algorithm monitors
the digital value of all connected inputs (IN1-IN16). If any of the inputs transition from a zero to a
one, the algorithm enters the tripped state.
When RST input is set to zero, the algorithm is in the disabled state. A zero to one transition on
the RST input sets the algorithm to the armed state. When this transition occurs, any inputs
(IN1-IN16) that are a one are ignored. Thus, it is not necessary to ensure that all inputs are a zero
when the algorithm is armed.
The current state of the algorithm is indicated in two ways: the X1 field of the algorithm LC record
and the STATE output. The following table shows the states and the indications.
STATE

X1 FIELD

S T AT E
OUTPUT

Armed or Disabled

Tripped

Once the algorithm enters the tripped state it remains in that state. The RST input must be set to
zero to enter the disabled state, and then set to a one in order to enter the armed state again.
Controlled Algorithm Execution
The FIRSTOUT algorithm can be selectively executed by using the reset (RST) input. The RST
input must be set to a one for the algorithm to operate. If the RST input is set to a zero, the
algorithm is disabled and the algorithm is not executed in each loop that the RST is set to zero.

REF_1100

221

5.42 FIRSTOUT
Trip Reporting
Each of the 16 bits in the monitor (MNTR) output corresponds to the IN1 - IN16 inputs. Bit zero
corresponds to IN1, bit one corresponds to IN2, and so forth. When the algorithm is operating in
the armed state, all bits in the MNTR points are set to zero. If any of the inputs (IN1 - IN16)
transition to a one, the corresponding bit in the MNTR packed point output is set to one.
If multiple inputs transition to one on the same execution cycle, the algorithm can be configured to
report which input(s) caused the change. This can be done in one of two ways. First, the default is
for all inputs that transitioned to be reported in the MNTR output. Optionally, only the input with
the lowest input number can be reported in the MNTR output. Note that the MULT output point is
set to one when either of these conditions occur. The desired configuration is specified using the
MCFG (X2) field in the algorithm LC record.
The number of inputs that transitioned from zero to one is reported in the optional analog output
NTRP. During operation in armed mode, the NTRP output is set to zero.
Dependencies among RST, IN1-IN16 inputs, and TRPD output are shown on the following timing
diagram.

RST

1
0

IN1

1
0

IN2

1
0

TRPD

1
0

Cascading Multiple Algorithms


If it is necessary to monitor more that 16 digital inputs, multiple FIRSTOUT algorithms can be
cascaded together. The TRPD output of each algorithm is connected to one of the inputs (IN1 IN6) of the subsequent algorithm.

222

REF_1100

5.42 FIRSTOUT

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU -Integer

Data Init

Optional

Tuning diagram
number

MCFG

X2 - Byte

Data Init

Required

This field controls how


the algorithm reports
multiple inputs
transitioning in the
same loop time. The
values are:
0 = Report all inputs
that transitioned
1 = Report only the
input with the lowest
input pin number

IN1

Input

Variable

Optional

Input 1

LD, LP

IN2

Input

Variable

Optional

Input 2

LD, LP

IN3

Input

Variable

Optional

Input 3

LD, LP

IN4

Input

Variable

Optional

Input 4

LD, LP

IN5

Input

Variable

Optional

Input 5

LD, LP

IN6

Input

Variable

Optional

Input 6

LD, LP

IN7

Input

Variable

Optional

Input 7

LD, LP

IN8

Input

Variable

Optional

Input 8

LD, LP

IN9

Input

Variable

Optional

Input 9

LD, LP

IN10

Input

Variable

Optional

Input 10

LD, LP

IN11

Input

Variable

Optional

Input 11

LD, LP

IN12

Input

Variable

Optional

Input 12

LD, LP

IN13

Input

Variable

Optional

Input 13

LD, LP

IN14

Input

Variable

Optional

Input 14

LD, LP

IN15

Input

Variable

Optional

Input 15

LD, LP

IN16

Input

Variable

Optional

Input 16

LD, LP

RST

Input

Variable

Required

Reset input. A zero on


this input causes the
algorithm to enter
disabled mode. A value
of one causes the
algorithm to enter
armed mode.

LD, LP

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

223

5.42 FIRSTOUT

224

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

MNTR

Output

Variable

Required

MULT

Output

Variable

TRPD

Output

NTRP

Output

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Each bit 1 - 16 of this


point corresponds to
IN1 - IN16 respectively.
When in the armed
state, all 16 bits are set
to zero. When in the
tripped state, the bit
that corresponds to the
first input to transition
to a one is set.

LP

Optional

This output is always


set to zero when the
algorithm is operating
in the armed mode. If
more than one of the
inputs transition to one,
this output is set to
one. Note that when
this condition occurs,
the bit that
corresponds to the
lowest numbered input
that triggered the trip
condition is set in the
MNTR point.

LD, LP

Variable

Required

This output is set to


one when the algorithm
is operating in the
tripped state. It is set to
zero if the algorithm is
operating in the armed
state.

LD, LP

Variable

Required

In the tripped state, this


output is equal to the
number of inputs that
transitioned from zero
to one in the execution
cycle in which the
algorithm transitioned
to the tripped state.
This output is always
set to zero when the
algorithm is operating
in the armed state.

LA

REF_1100

5.43 FLIPFLOP

5.43 FLIPFLOP
Description
The FLIPFLOP algorithm is a memory device. Its output states are defined in the Function for
Reset Override and Function for Set Override Truth tables.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

TYPE

X1-Byte

Data Init.

Required

DEFAULT
VALUE
0

DESCRIPTION

Type of flip-flop:
1 = Flip-flop with set
override

MIN.
POINT
RECORD
-

0 = Flip-flop with reset


override
SET

Variable

Required

Input (digital); set

LD, LP

RSET

Variable

Required

Input (digital); reset

LD, LP

OUT

Variable

Required

Output (digital)

LD, LP

Function for Reset Override


SET

RESET

OUT

where:
S = Output remains in the same or previous state.

REF_1100

225

5.43 FLIPFLOP
On power up/reset of the Controller, OUT is set according to the truth table, unless SET and
RSET are both FALSE.
Function for Set Override
SET

RESET

OUT

where:
S = Output remains in the same or previous state.
On power up/reset of the Controller, OUT is set according to the truth table, unless SET is set
FALSE.

226

REF_1100

5.44 FUNCTION

5.44 FUNCTION
Description
The FUNCTION algorithm generates a piecewise-linear function that is determined by elements
of a 12-element X-Y breakpoint array. Each Y-array element (dependent variable) has a
respective X-array element (independent variable), thereby portraying the desired function. The
number of breakpoints specifies the size of the array.
If the input value is invalid or less than the smallest element in the X-array, the output assumes
the value of the corresponding Y-array element. Also, if the input value is greater than the largest
X-array element, the output assumes the value of the corresponding Y-array element. If there is
more than one output value (Y-array) for a particular input value (X-array), the output is the first
element of the Y-array encountered.
The TPSC and BTSC algorithm definitions must match the highest and lowest Y-array values of
the function defined in order for tracking to be properly implemented. If the limits are different, the
algorithm tracks to the value. But upon releasing, it bumps back to the calculated output value.
Note: If the algorithm receives an invalid value as an input, or calculates an invalid value for the
output, the drop is placed into alarm.
Functional Symbol

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog point. This algorithm takes the following action in response to the information found
in the input signal TRIN:
BIT

REF_1100

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

No action

Passed through**

20

Raise inhibit

No action

Passed through**

21

Conditional Track

Implemented

Passed through***

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

227

5.44 FUNCTION

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the
definitions given in Setting Tracking Signals (see page 16).
*** If the algorithm is being told to track, then the Conditional track bit is ignored.
Otherwise, the value of the conditional track bit is transferred to all output track points.
If the Conditional Track bit is set in the track input point, the analog value of all output
track points is calculated based on the analog value of the track input point.

The high and low limit flags and the tracking signals from the algorithm are output to TOUT, to be
used for display and by an upstream algorithm. If the output value is invalid, the quality of OUT is
set to BAD. Otherwise, the quality of OUT is set to the quality of the input when not in tracking
mode. When tracking, the quality is set to the quality of the track input variable.
When the FUNCTION algorithm is tracking, it forces the upstream algorithm to track to the
X-array value associated with the Y-array value to which the FUNCTION is told to track. However,
if there is more than one X-array value associated with the specified Y-array value, the
FUNCTION algorithm forces the upstream algorithm to track to the first X-array value
encountered.
Note: If the algorithm generates an invalid track output value, the input value is used as the
track output, unless it is invalid. The track output value is not updated if both the calculated track
output and input values are invalid.
Algorithm Record Type = LC
Algorithm Definitions

228

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init

GAIN

T7-Real

Tuning
Constant

MIN.
POINT
RECORD

Required

105

Tuning Diagram
Number

Required

1.0

Gain on the input. The


gain on the input
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

REF_1100

5.44 FUNCTION

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

BIAS

T8-Real

Tuning
Constant

Required

0.0

TPSC

T9-Real

Tuning
Constant

Required

BTSC

U1-Real

Tuning
Constant

TRAT

U2-Real

BPTS

DESCRIPTION

MIN.
POINT
RECORD

Bias on the input

100.0

Maximum value of the


output point

Required

0.0

Minimum value of the


output point

Tuning
Constant

Required

2.5

Track ramp rate (units


per second).

X1-Byte

Tuning
Constant

Required

2.0

Number of break
points (number of (x,
y) coordinate pairs)

X- 1

R1-Real

Tuning
Constant

Required

- 100.0

X-coordinate 1

Y- 1

S4-Real

Tuning
Constant

Required

- 100.0

Y-coordinate 1

X- 2

R2-Real

Tuning
Constant

Required

100.0

X-coordinate 2

Y- 2

S5-Real

Tuning
Constant

Required

100.0

Y-coordinate 2

X- 3

R3-Real

Tuning
Constant

Optional

0.0

X-coordinate 3

Y- 3

S6-Real

Tuning
Constant

Optional

0.0

Y-coordinate 3

X- 4

R4-Real

Tuning
Constant

Optional

0.0

X-coordinate 4

Y- 4

S7-Real

Tuning
Constant

Optional

0.0

Y-coordinate 4

X- 5

R5-Real

Tuning
Constant

Optional

0.0

X-coordinate 5

Y- 5

S8-Real

Tuning
Constant

Optional

0.0

Y-coordinate 5

X- 6

R6-Real

Tuning
Constant

Optional

0.0

X-coordinate 6

Y- 6

S9-Real

Tuning
Constant

Optional

0.0

Y-coordinate 6

X- 7

R7-Real

Tuning
Constant

Optional

0.0

X-coordinate 7

Y- 7

T1-Real

Tuning
Constant

Optional

0.0

Y-coordinate 7

X- 8

R8-Real

Tuning
Constant

Optional

0.0

X-coordinate 8

Y- 9

T2-Real

Tuning
Constant

Optional

0.0

Y-coordinate 8

REF_1100

229

5.44 FUNCTION

230

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

X- 9

R9-Real

Tuning
Constant

Y- 9

T3-Real

X -10

MIN.
POINT
RECORD

Optional

0.0

X-coordinate 9

Tuning
Constant

Optional

0.0

Y-coordinate 9

S1-Real

Tuning
Constant

Optional

0.0

X-coordinate 10

Y -10

T4-Real

Tuning
Constant

Optional

0.0

Y-coordinate 10

X -11

S2-Real

Tuning
Constant

Optional

0.0

X-coordinate 11

Y -11

T5-Real

Tuning
Constant

Optional

0.0

Y-coordinate 11

X -12

S3-Real

Tuning
Constant

Optional

0.0

X-coordinate 12

Y -12

T6-Real

Tuning
Constant

Optional

0.0

Y-coordinate 12

IN1

Variable

Required

IN1 variable analog


input

LA

TOUT

Variable

Required

Track output value,


mode and status
signals for input
variable

LA

OUT

Variable

Required

Analog output
variable

LA

TRIN

Variable

Optional

Tracking analog
value, tracking and
limiting mode signals
input variance

LA

REF_1100

5.45 GAINBIAS

5.45 GAINBIAS
Description
The GAINBIAS algorithm multiplies the analog input with an internal gain, adds a bias and then
limits the output value.
To scale the output proportionally to the input, calculate the required Gain and Bias as follows:

Note: If the algorithm receives an invalid value as an input, or calculates an invalid value as the
output, the drop is placed into alarm.

Functional Symbol

REF_1100

231

5.45 GAINBIAS
Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status of
the analog point. This algorithm takes the following action in response to the information found in
the input signal TRIN:
BIT

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

No action

Passed through**

20

Raise inhibit

No action

Passed through**

21

Conditional Track

Implemented

Passed through***

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definitions
given in Setting Tracking Signals (see page 16).
*** If the algorithm is being told to track, then the Conditional track bit is ignored. Otherwise, the
value of the conditional track bit is transferred to all output track points. If the Conditional Track
bit is set in the track input point, the analog value of all output track points is calculated based on
the analog value of the track input point.

232

REF_1100

5.45 GAINBIAS
The high and low limit flags and the tracking signals from the algorithm are output to TOUT, to be
used for display and by an upstream algorithm. If the OUT value is invalid, the quality of OUT is
set to BAD. Otherwise, if the quality propagation (PROQ) option is ON, the quality of OUT is set to
the quality of the input when not in tracking mode. When tracking, the quality is set to the quality
of the track input variable. If the PROQ option is OFF, the quality of OUT is set to GOOD.
Note: If the algorithm generates an invalid track output value, the input value is used as the
track output, unless it is invalid. The track output value is not updated if both the calculated track
output and input values are invalid.
Algorithm Record Type= LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init

GAIN

R1-Real

BIAS

Required

76

Tuning Diagram
Number

Tuning
Constant

Required

1.0

Gain on input. The gain


on the input should
never be initialized to
zero; if it is, the drop is
placed into alarm.

R2-Real

Tuning
Constant

Required

Bias on input

TPSC

R3-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

BTSC

R4-Real

Tuning
Constant

Required

Minimum value of the


output point

R5-Real

Tuning
Constant

Required

2.5

Track ramp rate (units


per second)

X1-Byte
Bit 1

Data Init.

Required

ON

Quality Propagation
option:

TRAT
PROQ

MIN.
POINT
RECORD

ON = Normal quality
selection

OFF = Quality of the


output is always GOOD,
except when OUTPUT
is not a valid real
number.
IN1

Variable

Required

TOUT

Variable

Required

Track output value,


mode and status signals
for input variable

LA

OUT

Variable

Required

Analog output variable

LA

REF_1100

Input analog

LA

233

5.45 GAINBIAS

N AM E

TRIN

LC ALG.
RECORD
FIELD
-

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Tracking analog value,


tracking and limiting
mode signals input
variable

LA

Function
OUT = (IN1 x GAIN) + BIAS
IF OUT >= TPSC THEN
OUT = TPSC
ELSE
IF OUT <= BTSC THEN
OUT = BTSC

234

REF_1100

5.46 GASFLOW

5.46 GASFLOW
Description
The GASFLOW algorithm calculates a pressure-and-temperature-compensated mass or
volumetric flow for ideal gases.
The mass flow is calculated as shown below:

The volumetric flow is calculated as shown below:

It is possible to disable pressure compensation or temperature compensation. For no pressure


compensation, you must specify a negative pressure reference (PRES) value. For no temperature
compensation, you must specify a negative temperature reference (TEMP) value.
The TPSC and BTSC parameters are used to limit the output value of the algorithm.
Functional Symbol

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the analog tracking
point's third status word. This algorithm takes the following action in response to the information
found in the input signal TRIN:
BIT

REF_1100

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Ignored

Not used

17

Track if lower

Ignored

Not used

18

Track if higher

Ignored

Not used

19

Lower inhibit

Ignored

Not used

20

Raise inhibit

Ignored

Not used

235

5.46 GASFLOW

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

21

Conditional Track

No action

Not used

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

The high and low limit flags are output to TOUT to be used for display.
The output has the worst quality of the analog inputs specified assigned to the quality of the
output.
Algorithm Record Type = LC
Algorithm Definitions

236

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

DIAG

LU-Integer

Data Init.

Required

78

Tuning Diagram Number

CALC

G3-Integer
Bit 5

Data Init.

Required

MASSFLOW

Type of flow calculation


performed:
MASSFLOW = mass flow
VOLFLOW = volume flow

GAIN

R3-Real

Tuning
Constant

Required

1.0

Calculated flow coefficient


at base operating
conditions.

PRES

R4-Real

Tuning
Constant

Required

2400.0

Reference pressure; base


operating pressure used in
the calculation of the flow
coefficient, GAIN

TEMP

R5-Real

Tuning
Constant

Required

1000.0

Reference temperature;
base operating
temperature used in the
calculation of the flow
coefficient, GAIN.

REF_1100

5.46 GASFLOW

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

PABS

G3-Integer
Bit 2

Data Init.

Required

DEFAULT
VALUE
YES

DESCRIPTION

Convert pressure values


to absolute pressure
option:

MIN.
POINT
REC.
-

YES = Input and reference


pressure values are
converted to absolute
pressure.
NO = Input and reference
pressure values are not
converted to absolute
pressure.
PUNT

G3-Integer
Bits 0 and 1

Data Init.

Required

PSI

Pressure conversion type

Absolute
Pressure
Conversion
Type

Value

PSI
14.696
INH20 406.800
KGCM2 1.033
KPA
101.325
TABS

G3-Integer
Bit 4

Data Init.

Required

YES

Convert temperature
values to absolute
temperature option.

YES = Input and reference


temperature values are
converted to absolute
temperature.

NO = Input and reference


temperature values are
not converted to absolute
temperature.
TUNT

G3-Integer
Bit 3

Data Init.

Required

FAHR

Temperature conversion
type

Type

Absolute
Temperature
Conversion
Value

FAHR 459.67
CENT 273.15

REF_1100

TPSC

R1-Real

Tuning
Constant

Required

100.0

Maximum value of the


output

BTSC

R2-Real

Tuning
Constant

Required

0.0

Minimum value of the


output

237

5.46 GASFLOW

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

PNEG

G3-Integer
Bit 6

Data Init.

Required

DEFAULT
VALUE
NO-CHECK

DESCRIPTION

MIN.
POINT
REC.
-

Check for use of negative


pressure and temperature
reference values
NOCHECK = No check is
performed to see if the
PACT(C) and TACT(C)
inputs were specified. A
negative PRES REF or
TEMP REF value causes
the associated term to be
omitted from the equation.
CHECK = Check whether
the PACT(C) and
TACT(C) inputs were
specified. If an input is not
specified, the associated
term is omitted from the
equation. When the inputs
are specified, the PRES
REF and TEMP REF
values are used
regardless of their sign.

PSEL

G3-Integer
Bit 7

Data Init.

Required

STANDARD

Select pressure
conversion type:

STANDARD - Use the


pressure conversion value
defined by PRES UNIT.
USER - Use the pressure
conversion value defined
by USER PRES.
PUSR

R6-Real

Tuning
Constant

Required

0.0000

TYPE

X1-Byte

Data Init.

Required

DEL-TAP

Value for user-specified


pressure conversion

Flow Differential or
DELTAP

Default: DELTAP

238

IN1

Variable

Required

Differential pressure
analog input

LA

TOUT

Variable

Required

Track output value and


status output signals

LA

PACT

Variable

Optional

Actual pressure analog


input

LA

TACT

Variable

Optional

Actual temperature analog


input

LA

OUT

Variable

Required

Analog output variable

LA

TRIN

Variable

Optional

Track value, tracking and


limit modes. Analog input

LA

REF_1100

5.46 GASFLOW
Function
IF ((PNEG = NOCHECK) AND (PRES REF < 0)) OR
((PNEG = CHECK) AND (PACT = UNDEFINED))
THEN
P1 = P2 = 1
ELSE
P1 = PACT + ABSPRES
P2 = PRES REF + ABSPRES
IF ((TNEG= NOCHECK) AND (TEMP REF < 0)) OR
((TNEG= CHECK) AND (TACT = UNDEFINED))
THEN
T1 = T2 = 1
ELSE
T2 = TACT + ABSTEMP
T1 = TEMP REF + ABSTEMP
IF MASSFLOW THEN
IF (P2 = 0) OR (T1 = 0) THEN
OUTVAL = 0
ELSE
IF DELTAP
OUTVAL = PDIF * (P1/P2) * (T1/T2)
ELSE
OUTVAL = (P1/P2) * (T1/T2)
ELSE
IF (P1 = 0) OR (T2 = 0) THEN
OUTVAL = 0
ELSE
IF DELTAP
OUTVAL = PDIF * (P2/P1) * (T2/T1)
ELSE
OUTVAL = (P2/P1) x (T2/T1)
IF OUTVAL < 0 THEN
OUT = 0
ELSE
IF DELTAP
OUT = GAIN * SQUARE ROOT OF OUTVAL
ELSE
OUT = (GAIN * PDIF) * SQUARE ROOT OF OUTVAL
where:
P1,P2,T1,T2,OUTVAL

local, temporary, real variables

ABSPRES, ABSTEMP

constants from the pressure and temperature conversion tables


built into the algorithm

REF_1100

239

5.47 HEARTBEAT

5.47 HEARTBEAT
Description
The HEARTBEAT algorithm is designed to generate heartbeat signals that can be received by
other drops for use in safety critical applications. The algorithm can also be utilized to monitor up
to five heartbeat signals generated from heartbeat algorithms in other Controllers. If the algorithm
detects that a heartbeat signal being monitored has ceased, it sets the corresponding output to
one. It has a value of zero when it is communicating.
A heartbeat signal is a continuously changing signal that is generated and broadcast from an
Ovation Controller. A heartbeat signal that is continuously changing is an explicit indication that
the Controller generating the heartbeat signal is functioning properly.
Typically, the heartbeat signal allows a control strategy to monitor other heartbeat signals (ones
that are broadcast from other Controller drops) and take appropriate actions if the heartbeat
signals cease. It is common in power generation applications to have the loss of a heartbeat
signal from one or more Controllers generate a Master Fuel Trip (MFT) in the Controller that is
monitoring the heartbeat signals.
Functional Symbol

240

REF_1100

5.47 HEARTBEAT
Overview
The value of a heartbeat signal output (HTBT) is a continuously changing analog value. The
HTBT output is updated each loop time to a new number. The actual value of the heartbeat signal
is not important - it is important that the heartbeat signal updates each loop time by the originating
Controller and that the receiving Controller records a different value each loop time.
If any input heartbeat signals are connected to the HEARTBEAT algorithm, they are monitored to
ensure that the value changes on each successive loop. During each execution loop, the value of
each connected input is read and compared to that point's value that was read on the previous
loop. Under normal conditions, these two successive values should be different - that is, the
changing signal is being received from the originating drop(s) successfully. If the value of any of
the input points is unchanging for the user-entered timeout period (TIME1 - 5), the corresponding
trip output OUT1 - 5 is set to true.
Note that if the user-entered timeout period is not an exact multiple of the control task period in
which the algorithm is executing, then the algorithm rounds the user-entered value to the next
higher integer multiple of the task period. When this occurs, the resulting actual timeout is the
user-entered timeout plus the control task period. This action ensures that the tuning fields of the
algorithm always reflect the exact timeout period.
Emerson recommends that when the algorithm is used to generate a heartbeat signal, it be
executed in a 0.1 second control task. When the algorithm is used to monitor other heartbeat
signals, Emerson recommends that it be executed in a 0.1 second control task.
Also, note that the algorithm ensures that the user-entered timeout cannot be set to a value less
than the time that it takes the Ovation Network to detect a loss of communication on a primary
Controller and to initiate a failover. This time is typically five seconds.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU - Integer

Data Init

Optional

Tuning diagram number

TIME1

R1 - Real

Tuning
Constant

Required

Timeout value for


heartbeat input 1*

TIME2

R2 - Real

Tuning
Constant

Required

Timeout value for


heartbeat input 2*

TIME3

R3 - Real

Tuning
Constant

Required

Timeout value for


heartbeat input 3*

TIME4

R4 - Real

Tuning
Constant

Required

Timeout value for


heartbeat input 4*

TIME5

R5 - Real

Tuning
Constant

Required

Timeout value for


heartbeat input 5*

IN1

Input

Variable

Optional

Input Heartbeat signal 1

LA

IN2

Input

Variable

Optional

Input Heartbeat signal 2

LA

IN3

Input

Variable

Optional

Input Heartbeat signal 3

LA

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

241

5.47 HEARTBEAT

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

IN4

Input

Variable

Optional

IN5

Input

Variable

HTBT

Output

Variable

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Input Heartbeat signal 4

LA

Optional

Input Heartbeat signal 5

LA

Required

Heartbeat Output

LA

Note: It is
recommended that the
Heartbeat output (HTBT)
points be built with a
broadcast frequency of
100msec instead of 1
second.
OUT1

Variable

Optional

Fail Output for Heartbeat


input signal 1

LD, LP

OUT2

Variable

Optional

Fail Output for Heartbeat


input signal 2

LD, LP

OUT3

Variable

Optional

Fail Output for Heartbeat


input signal 3

LD, LP

OUT4

Variable

Optional

Fail Output for Heartbeat


input signal 4

LD, LP

OUT5

Variable

Optional

Fail Output for Heartbeat


input signal 5

LD, LP

* Note that the algorithm sets the parameter to a minimum value required for the Ovation network subsystem
to detect a timeout. You only have the option to extend the timeout value. Also, if the user-entered timeout is
not an integer multiple of the control task period, the algorithm rounds up to the user-entered value to the next
highest integer multiple of the control task period.

242

REF_1100

5.48 HIGHLOWMON

5.48 HIGHLOWMON
Description
The HIGHLOWMON algorithm is a high and low signal monitor with reset deadband and
fixed/variable limits. For the HIGHLOWMON algorithm, if the input value (IN1) is greater than the
high set point or less than the low set point, the digital output flag is set TRUE. To reset the flag,
the input must be less than the high set point minus the deadband on the high set point, and
greater than the low set point plus the deadband on the low set point.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

Required

74

Tuning Diagram
Number

* HISP

R1-Real

Selectable

Required

0.0

High set point

HIDB

R2-Real

Tuning
Constant

Optional

0.0

Deadband on high
set point

* LOSP

R3-Real

Selectable

Required

0.0

Low set point

LODB

R4-Real

Tuning
Constant

Optional

0.0

Deadband on low set


point

MIN.
POINT
RECORD
LA
LA
-

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

0.0

Output (digital)

LD

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

Function
IF IN1 > HISP OR IN1 < LOSP
THEN OUT = TRUE
ELSE
IF IN1 < (HISP - HIDB) AND IN1 > (LOSP + LODB)
THEN OUT = FALSE

REF_1100

243

5.49 HIGHMON

5.49 HIGHMON
Description
The HIGHMON algorithm is a high signal monitor with reset deadband and a fixed/variable limit.
With the HIGHMON algorithm, if the input value (IN1) exceeds the fixed set point value, the digital
flag is set TRUE. To clear the flag, IN1 must be less than the set point value minus the deadband.
The value of IN1 is checked for invalid real numbers. If IN1 is invalid, OUT retains its last valid
value, and the quality of OUT is set to BAD. The quality of IN1 is not propagated.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

Required

63

Tuning Diagram
Number

* HISP

R1-Real

Selectable

Required

0.0

Set point for the high


signal monitor trip
point

HIDB

R2-Real

Tuning
Constant

Required

0.0

Deadband

MIN.
POINT
RECORD
LA

OUT

Variable

Required

Output (digital)

LD, LP

IN1

Variable

Required

Input (analog)

LA

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may default
the parameter to a value and mark it as "Optional." However, for the control function to be executed properly,
you must enter a value for the parameter.

Function
IF IN1 > HISP
THEN OUT = TRUE
ELSE
IF IN1 < (HISP - HIDB)
THEN OUT = FALSE

244

REF_1100

5.50 HISELECT

5.50 HISELECT
Description
The HISELECT algorithm performs a gain and bias on the four inputs. The output is equal to the
greater of the four values, according to the quality (QUAL) parameter.
The quality (QUAL) parameter contains three options that enable you to select the value and type
of quality that the output point receives.
The WORSE option selects the greater value for an output point, independent of the qualities of
the two input points. The output point is assigned the worst quality of the four input points.
The SELECTED option also selects the greater value, independent of the qualities of the four
input points. The output point is assigned the value and quality of the selected input point.
However, if any of the four gained and biased values are equal, the better quality is assigned to
the output point.
The NOTBAD option selects the greater gained and biased input value, providing the qualities of
both inputs are not BAD. The quality of the output is set equal to the quality of the input selected
or to the better quality of the two inputs if the gained and biased input values are equal. If one
input has BAD quality, the gained and bias input value and the quality of the input with the not
BAD quality are assigned to the output. The output is equal to the greater gained and biased input
value and contains BAD quality if both input qualities are BAD.
Note: If the algorithm calculates an invalid output value by using one of the gained and biased
inputs, the value of the other three points is used for the output. In addition, for the NOTBAD
option, if the quality of four input points is BAD, and only one of the inputs is a valid value, the
algorithm selects the valid gained and biased input for the output, and sets the quality of the
output point to BAD.
If the calculated track output is invalid, then the IN2 output is equal to the IN1 input, and the
cascade track output is equal to the IN1 input, if the inputs are valid. If the calculated track
output and the input values are invalid, then the IN1 and IN1 track outputs are not updated.
If the algorithm receives an invalid value as an input, or if it calculates an invalid value as an
output, the drop is placed into alarm.
Functional Symbol

REF_1100

245

5.50 HISELECT
Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog tracking point. This algorithm takes the following action in response to the
information found in the analog input signal TRIN:
BIT

DESCRIPTION

ACTION

TRK1 SIGNAL

16

Track

17

Track if lower

Implemented and passed


through. Passed through or
set TRUE when IN1 input is
not selected and IN1 gain is
>0*

Implemented and passed


through. Passed through or set
TRUE when IN2 input is not
selected and IN2 gain is >0*

18

Track if higher

Passed through or set TRUE


when IN1 input is not selected
and IN1 gain is >0*

Passed through or set TRUE


when IN2 input < is not
selected and IN2 gain is >0*

19

Lower inhibit

Passed through**

Passed through**

20

Raise inhibit

Passed through**

Passed through**

21

Conditional Track

Implemented

Passed through***

22

Not used

Not used

Not used

23

Deviation Alarm

Not used

Not used

24

Local Manual mode

Not used

Not used

25

Manual mode

Not used

Not used

26

Auto mode

Not used

Not used

27

Not Used

Not used

Not used

28

Not Used

Not used

Not used

29

Not Used

Not used

Not used

30

Low limit reached

Low limit reached

Not used

31

High limit reached

High limit reached

Not used

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definitions given
in Setting Tracking Signals (see page 16).
*** If the algorithm is being told to track, then the Conditional track bit is ignored. Otherwise, the
value of the conditional track bit is transferred to all output track points. If the Conditional Track bit
is set in the track input point, the analog value of all output track points is calculated based on the
analog value of the track input point.

246

REF_1100

5.50 HISELECT
The high and low limit flags, and the tracking signals from the algorithm are output to TRK3 and
TRK4, to be used for display and by upstream algorithms. If the output value is invalid, the quality
of OUT is set to BAD. Otherwise, the quality of OUT is set according to the quality (QUAL)
parameter. When tracking, the quality is set to the quality of the track input variable.
Algorithm Record Type= LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init

IN1G

R1-Real

IN1B

Required

83

Tuning Diagram
Number

Tuning
Constant

Required

1.0

Gain on input 1. The


gain on the input1
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

R2-Real

Tuning
Constant

Optional

0.0

Bias on input 1

IN2G

R3-Real

Tuning
Constant

Required

1.0

Gain on input 2. The


gain on the input 2
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

IN2B

R4-Real

Tuning
Constant

Optional

0.0

Bias on input 2

IN3G

R8-Real

Tuning
Constant

Optional

1.0

Gain on input 3. The


gain on the input 3
should never be
initialized to zero; if it
is, the drop is placed
into alarm

IN3B

R9-Real

Tuning
Constant

Optional

0.0

Bias on input 3

IN4G

S1-Real

Tuning
Constant

Optional

1.0

Gain on input 4, the


gain on the input 4
should never be
initialized to zero; if it is
the drop is placed into
alarm

IN4B

S2-Real

Tuning
Constant

Optional

0.0

Bias on input 4

TPSC

R5-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

BTSC

R6-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point

REF_1100

MIN.
POINT
RECORD

247

5.50 HISELECT

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

TRAT

R7-Real

Tuning
Constant

Required

2.5

QUAL

X1-Byte
Bits 0 and 1

Data Init.

Required

WORSE

DESCRIPTION

MIN.
POINT
RECORD

Track ramp rate (units


per second)

Output quality type:

WORSE = Worst
quality of the four
inputs is selected.
SELECTED = Output
point is assigned the
quality of the selected
input point. If the
values of the input
points are equal, the
best quality is selected.
NOTBAD = The output
point is assigned the
quality of the selected
input point, providing
the qualities of the two
inputs are not BAD.If
one input point quality
is BAD, the output is
assigned the quality of
the not BAD input. The
better quality of the two
inputs is selected if the
input values are equal.

248

IN1

Variable

Required

Analog input 1

LA

TRK1

Variable

Required

Track output value


mode and status
signals for Input 1
variable

LA

IN2

Variable

Required

Analog input 2

LA

TRK2

Variable

Required

Track output value


mode status signals for
Input 2 variable

LA

IN3

Variable

Optional

Analog input 3

LA

TRK3

Variable

Optional

Track output value


mode signal for Input 3

LA

IN4

Variable

Optional

Analog input 4

LA

TRK4

Variable

Optional

Track output value


mode signal for Input 4

LA

OUT

Variable

Required

Analog output variable

LA

TRIN

Variable

Optional

Tracking and signals


analog input variable

LA

REF_1100

5.50 HISELECT
Function
IN1GB = (IN1 x IN1G) + IN1B
IN2GB = (IN2 x IN2G) + IN2B
IN3GB = (IN3 x IN3G) + IN3B
IN4GB = (IN4 x IN4G) + IN4B
IF IN2GB >= IN1GB THEN
OUT = IN2GB
ELSE
OUT = IN1GB
If IN3G >= OUT
OUT = IN3G
If IN4G >= OUT
OUT = IN4G
IF OUT >= TPSC THEN
OUT = TPSC
ELSE
IF OUT <= BTSC THEN
OUT = BTSC
IF OUT >= TPSC
OUT = TPSC
ELSE
IF OUT <= BTSC
OUT = BTSC

REF_1100

249

5.51 HSCLTP

5.51 HSCLTP
Description
HSCLTP calculates Enthalpy (H) and Entropy (S) of Compressed Liquid given its Temperature
and Pressure. It is one of the functions of the STEAMTABLE algorithm (see page 492).
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
HSCLTP input and output values
P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

TEMP

32.0

705.47

(INPUT 2)

PRES

0.0885891400

16000.00

(INPUT 3)

PRAT

* Pressures are added together.

(OUT 1)

ENTH

-0.017864220

906.01

(OUT 2)

ENTR

-0.000036890

1.0612

Note: PRAT is set from 12 to 16 psi.

250

REF_1100

5.52 HSLT

5.52 HSLT
Description
HSLT calculates Enthalpy (H) of Saturated Liquid given its Temperature. It is one of the functions
of the STEAMTABLE algorithm (see page 492).
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
HSLT input and output values
P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

TEMP

32.0

705.47

(OUT 1)

ENTH

-0.017864220

906.01

REF_1100

251

5.53 HSTVSVP

5.53 HSTVSVP
Description
HSTVSVP calculates Enthalpy (H), Entropy (S), Temperature, and Specific Volume of Saturated
Vapor given its Pressure. It is one of the functions of the STEAMTABLE algorithm (see page
492).
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
HSTVSVP input and output values
P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

PRES

0.08858914

32080.234

(INPUT 2)

PRAT

* Pressures are added together.

(OUT 1)

ENTH

906.01

1204.8

(OUT 2)

TEMP

32.0

705.47

(OUT 3)

ENTR

1.0612

2.1873

(OUT 4)

VOL

0.05078

3304.7

Note: PRAT is set from 12 to 16 psi.

252

REF_1100

5.54 HSVSSTP

5.54 HSVSSTP
Description
HSVSSTP calculates Enthalpy (H), Entropy (S), and Specific Volume of Superheated Steam
given its Temperature and Pressure. It is one of the functions of the STEAMTABLE algorithm (see
page 492).
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
HSVSSTP input and output values
P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

TEMP

32.0

1600.0

(INPUT 2)

PRES

0.01

16000.0

(INPUT 3)

PRAT

* Pressures are added together.

(OUT 1)

ENTH

715.570

1859.85

(OUT 2)

ENTR

0.84797280

3.1233000

(OUT 3)

VOL

0.0200

122690.0

Note: PRAT is set from 12 to 16 psi.

REF_1100

253

5.55 INTERP

5.55 INTERP
Description
The INTERP algorithm provides a linear table-lookup and interpolation function. The algorithm
provides a lookup table for the value of a dependent variable (Y) based on the value of an
independent variable (X). The actual value X (XIN) is input to the algorithm along with up to ten
reference Y values (Y1...Y10) and their corresponding X values (X1...X10).
If the value of the XIN is not identically equal to any of the X1...X10 inputs, then resulting value of
YOUT is calculated by linear interpolation between the closest two values that the input XIN falls
between (that is, Xn + Xn+1). The formula to calculate YOUT is given as follows:
YOUT = (Yn + (Yn+1 - Yn)) * ((XIN - Xn) / (Xn+1 - Xn))
The value of YOUT is limited by the user-defined high and low limit values. Refer to the
accompanying figure that illustrates the interpolation procedure.
Functional Symbol

254

REF_1100

5.55 INTERP
Quality
The algorithm propagates the worst quality between the XIN input and the associated Y inputs
used to determine the value of YOUT. If the output is an exact Y input, then the YOUT quality is
the worst quality of the XIN input and that particular Y input.
User Configuration
The values of X1...X10 MUST be monotonically increasing (that is, Xn+1 > Xn). If the value of the
XIN is found to fall between X1...X10, then the VALID output is set to logic one. If the
monotonicity of the X1 - X10 is not monotonically increasing, then the algorithm may yield
unpredictable results. If the algorithm can determine that the table is not monotonically increasing,
then YOUT is set equal to Y10 and the VALID output is set to logic 0.
If the value of XIN > X10, then YOUT is set equal to Y10. If XIN < X1, then YOUT is set equal to
Y1. In both of these cases, the VALID output is set to logic zero. If the algorithm calculates an
invalid number, then YOUT is set to the last GOOD value and the quality is set to BAD.
If the YOUT is calculated by interpolating between Yn and Yn+1, then the quality of YOUT is the
worst quality of the XIN, Yn and Yn+1 inputs.
Interpolation Illustration

REF_1100

255

5.55 INTERP

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init

Required

113

Tuning Diagram
Number

TYPE

X2-Byte

Data Init

Required

Linear

Interpolation Type.
Currently only linear
is supported.

NUMR

X1-Byte

Data Init

Required

Number of X values.

X1

R1-Real

Tuning
Constant

Required

0.0

X value
corresponding to Y1.

X2

R2-Real

Tuning
Constant

Required

0.0

X value
corresponding to Y2.

X3

R3-Real

Tuning
Constant

Required

0.0

X value
corresponding to Y3.

X4

R4-Real

Tuning
Constant

Required

0.0

X value
corresponding to Y4.

X5

R5-Real

Tuning
Constant

Required

0.0

X value
corresponding to Y5.

X6

R6-Real

Tuning
Constant

Required

0.0

X value
corresponding to Y6.

X7

R7-Real

Tuning
Constant

Required

0.0

X value
corresponding to Y7.

X8

R8-Real

Tuning
Constant

Required

0.0

X value
corresponding to Y8.

X9

R9-Real

Tuning
Constant

Required

0.0

X value
corresponding to Y9.

X10

S1-Real

Tuning
Constant

Required

0.0

X value
corresponding to
Y10.

TPSC

S2-Real

Tuning
Constant

Required

100.0

Output top of scale.

BTSC

S3-Real

Tuning
Constant

Required

0.0

Output bottom of
scale.

Variable

Required

Actual value of X
variable (analog)

XIN

256

DEFAULT
VALUE

LA

REF_1100

5.55 INTERP

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Y1

Variable

Optional

Output Value
1(analog)

LA

Y2

Variable

Optional

Output Value 2
(analog)

LA

Y3

Variable

Optional

Output Value 3
(analog)

LA

Y4

Variable

Optional

Output Value 4
(analog)

LA

Y5

Variable

Optional

Output Value 5
(analog)

LA

Y6

Variable

Optional

Output Value 6
(analog)

LA

Y7

Variable

Optional

Output Value 7
(analog)

LA

Y8

Variable

Optional

Output Value 8
(analog)

LA

Y9

Variable

Optional

Output Value 9
(analog)

LA

Y10

Variable

Optional

Output Value 10
(analog)

LA

YOUT

Variable

Required

Output Y value
(analog)

LA

Variable

Optional

Equals Logic 1 when


the XIN value is
found to fall between
two X values in the
table (digital).

LD

VALID

REF_1100

257

5.56 KEYBOARD

5.56 KEYBOARD
Description
The KEYBOARD (Key Interface) algorithm interfaces the following control keys (P1 - P8,
Start/Open, Stop/Close, AUTO, MAN, SPUP, SPDN, INC, and DEC) to the Controller in the most
basic form. The output of each key is available for use once the algorithm is activated via a
control select command.
The KEYBOARD algorithm interfaces the Operator Station programmable keys (P1 through P10)
to the Controller in the most basic form. The output of each programmable key is available for use
once the algorithm is activated via a control select key. When using this algorithm, none of the ten
Control keys may be used for the activated control select number.
For the INC, DEC, SPDN, and SPUP keys, the output maintains a TRUE signal for as long as the
key is pressed. For all other keys, the output of this algorithm is a pulse (TRUE signal) of variable
length. The pulse length is determined by the LENGTH (LENG) parameter, which specifies the
pulse length in loops. If LENGTH is equal to 0 or 1, the pulse is 1 loop long. The LENGTH
parameter may specify a pulse length up to 255 loops.
Note: P9 and P10 keys are the same as Open and Close keys.
Functional Symbol

258

REF_1100

5.56 KEYBOARD
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LUInteger

Data Init.

Required

128

LENG

X2-Byte

Data Init.

Optional

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram
Number

Length of output pulse


in loops.

PK1

Variable

Optional

Output (digital); passed


on from Function Key
F1 or Programmable
Key P1.

LD, LP

PK2

Variable

Optional

Output (digital); passed


on from Function Key
F2 or Programmable
Key P2.

LD, LP

PK3

Variable

Optional

Output (digital); passed


on from Function Key
F3 or Programmable
Key P3.

LD, LP

PK4

Variable

Optional

Output (digital); passed


on from Function Key
F4 or Programmable
Key P4.

LD, LP

PK5

Variable

Optional

Output (digital); passed


on from Function Key
F5 or Programmable
Key P5.

LD, LP

PK6

Variable

Optional

Output (digital); passed


on from Function Key
F6 or Programmable
Key P6.

LD, LP

PK7

Variable

Optional

Output (digital); passed


on from Function Key
F7 or Programmable
Key P7.

LD, LP

PK8

Variable

Optional

Output (digital); passed


on from Function Key
F8 or Programmable
Key P8.

LD, LP

OPEN

Variable

Optional

Output (digital);
Passed on from
KEYBOARD
START/OPEN

LD, LP

CLOS

Variable

Optional

Output (digital):
Passed on from
KEYBOARD
STOP/CLOSE

LD, LP

REF_1100

259

5.56 KEYBOARD

N AM E

260

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

SPUP

Variable

Optional

Output (digital):
Passed on from
KEYBOARD set point
INCREASE (up arrow).

LD, LP

SPDN

Variable

Optional

Output (digital);
Passed on from
KEYBOARD set point
Decrease (down
arrow).

LD, LP

AUTO

Variable

Optional

Output (digital);
Passed on from
KEYBOARD AUTO

LD, LP

MAN

Variable

Optional

Output (digital);
Passed on from
KEYBOARD MANUAL

LD, LP

INC

Variable

Optional

Output (digital);
Passed on from
KEYBOARD Output
Increase (up triangle)

LD, LP

DEC

Variable

Optional

Output (digital);
Passed on from
KEYBOARD Output
Decrease (down
triangle).

LD, LP

REF_1100

5.57 LATCHQUAL

5.57 LATCHQUAL
Description
The LATCHQUAL algorithm latches and unlatches the quality of an input analog or digital point.
The algorithm sets or clears the Latched Quality bit of the IN1 point, depending on SET and
RSET points. Bit 14 of the 2W (second status word) of the analog point or bit 11 of the 2W
(second status word) of the digital point is the Latched Quality bit for the point.
Functional Symbol

If RSET is TRUE and the latched quality bit of IN1 is set, the Latched Quality bit is cleared.
If RSET is FALSE and SET is TRUE, then depending on the value of QUAL, the IN1 point sets its
Latched Quality bit and quality as follows:

If QUAL = 0 and Latched Quality of IN1 is not set, then Latched quality bit is set at its current
state.

If QUAL = 1 and Latched Quality of IN1 is not set or the Quality of IN1 is not GOOD, then the
Quality is set (latched) to GOOD.

If QUAL = 2 and Latched Quality of IN1 is not set or the Quality of IN1 is not FAIR, then the
Quality is set (latched) to FAIR.

If QUAL = 3 and Latched Quality of IN1 is not set or the Quality of IN1 is not POOR, then the
Quality is set (latched) to POOR.

If QUAL is greater than or equal to 4 and Latched Quality of IN1 is not set or the Quality of
IN1 is not BAD, then the Quality is set (latched) to BAD.

RSET overrides SET. If both are TRUE, then the Latched Quality bit of IN1 is cleared.
Note: IN1 can be a digital or analog point, with the minimum point record being LD or LA. If a
smaller point record is used, then no action is taken.
Algorithm Record Type = None
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

SET

Variable

Required

Digital input. Set


Latched Quality bit flag.

LD, LP

IN1

Variable

Required

Analog/Digital input

LD, LA

REF_1100

261

5.57 LATCHQUAL

N AM E

262

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

QUAL

Variable

Required

Packed input. Indicates


the quality to which IN1
is to be set.

LP

RSET

Variable

Required

Digital input. Clear


Latched Quality bit flag.

LD, LP

REF_1100

5.58 LEADLAG

5.58 LEADLAG
Description
LEADLAG is a nonlinear lead/lag function. The output value is a function of the old output, old
input, new input, gain, lead and lag time constants. In steady state, OUT = IN1 x GAIN (except
when limited). The output achieves 98 percent of the expected steady-state output value in five
time constants.
The algorithm can be configured to be a pure lead function. The output value is a function of the
old output, old input, new input, gain and lead time constants. The output achieves 98% of the
expected steady-state output value in five time constants.
Note: If the algorithm receives an invalid value as an input, or calculates an invalid value as the
output, the drop is placed into alarm.
Functional Symbol

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog track point. This algorithm takes the following action in response to the information
found in the analog input signal TRIN:
BIT

REF_1100

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

Implemented

Passed through**

20

Raise inhibit

Implemented

Passed through**

21

Conditional Track

No action

Not used

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Not Used

No action

Not used

263

5.58 LEADLAG

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definition given
in Setting Tracking Signals (see page 16).

The high and low limit flags and the tracking signals from the algorithm are output to TOUT, to be
used for display and by an upstream algorithm. If the output value is invalid, the quality of OUT is
set to BAD. Otherwise, the quality of OUT is set to the quality of the input when not in tracking
mode. When tracking, the quality is set to the quality of the track input variable.
Note: If the algorithm generates an invalid track output value, the IN1 input value is used as the
track output, unless it is invalid. The track output value is not updated if both the calculated track
output and IN1 input values are invalid.
Algorithm Record Type= LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init

Required

33

Tuning Diagram
Number

GAIN

R3-Real

Tuning
Constant

Required

1.0

Gain on input. The


gain on the input
should never be
initialized to zero; if it
is, the drop is placed
into alarm

TPSC

R1-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

BTSC

R2-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point

* LEAD

R4-Real

Selectable

Required

0.0

Lead time constant


(second)

LA

* LAG

R5-Real

Selectable

Required

30.0

Lag time constant


(second)

LA

Note: This is
approximately 1/5 of
the total time to
settle. For example,
for a 1 minute total,
set LAG to 12
seconds.

264

REF_1100

5.58 LEADLAG

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

TYPE

X2-Byte

Tuning
Constant

Required

DEFAULT
VALUE
LEADLAG

DESCRIPTION

MIN.
POINT
RECORD

Type of Function. The


choices are:
LEADLAG (0)
LEAD_ONLY (1)

Default = LEADLAG
TRAT

R6-Real

Tuning
Constant

Required

2.5

Track ramp rate (units


per second).
Analog input variable

IN1

Variable

Required

LA

TOUT

Variable

Required

Track output value,


for mode & status
signals for Input 1
variable

LA

OUT

Variable

Required

Analog output
variable

LA

TRIN

Variable

Optional

Tracking & Limiting


mode signals and
tracking value; analog
input variable

LA

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may default
the parameter to a value and mark it as "Optional." However, for the control function to be executed properly,
you must enter a value for the parameter.

Function
LEADLAG:
OUT = (K1 X IN1) + (K2 X OLDIN1) + (K3 X OLDOUT)
where:

REF_1100

OLDOUT

Previous output

IN1

Current input

OLDIN1

Previous input

K1

GAIN x (H + 2x LEAD)/H + 2x LAG)

K2

GAIN x (H - 2x LEAD)/H + 2x LAG)

K3

(2X LAG - H)/(2x LAG + H)

Sampling time (loop time)

265

5.58 LEADLAG

LEAD-ONLY
OUT

[(Gain * (Input - Previous Input)) + k1 * Old Output]/K1 + 1

GAIN

User Gain * (1 + K1)

K1

Lead Constant/Sampling time (loop time)

where:

266

REF_1100

5.59 LEVELCOMP

5.59 LEVELCOMP
Description
The LEVELCOMP algorithm calculates the density compensated water level in a pressurized
steam drum. This compensation assumes a differential pressure transmitter is inputting the raw
level signal. One leg of the transmitter is connected to a condensate reservoir which establishes
the transmitter's maximum water level. The other side of the transmitter is connected to the point
which defines the minimum transmitter water level. The distance between these taps is the
transmitter range D. See the following figure for details of the assumed piping configuration.

Reference Level
Reservoir

s
D

LT

Level
Transmitter

REF_1100

267

5.59 LEVELCOMP
The steam and water inside the drum are at saturation conditions. The water in the condensated
reservoir is pressurized water. The LEVELCOMP algorithm uses the specific volume of the steam
in the drum (s), the specific volume of the water in the drum (w) and the specific volume of the
water in the reference leg(r), and the specific volume of the water at calibration conditions (cal)
to compute the compensated level. The LEVELCOMP algorithm does the steamtable calculations
to obtain values for s, w, and r based on input points pressure and temperature. The
derivation of r requires an estimation of the average temperature in the condensate reference
column. The temperature can be a variable point or entered as a tuning constant. The calibration
fluid specific volume (cal) is an estimated value entered as a tuning constant.

268

REF_1100

5.59 LEVELCOMP
The raw drum level input normally varies from a negative value for minimum level to a positive
value at a maximum to +20 inwc at a maximum with 0 inwc being normal water level.The
minimum (MIN) and maximum (MAX) values are not used in the compensation calculation. The
algorithm output has the same range as the input.
Invalid Real Numbers and Quality
If the output value is invalid, the quality of the OUT is set to BAD. If the pressure (PRES) or
temperature (TEMP) value is out of range for the compressed liquid, saturated liquid or saturated
vapor regions, the quality of OUT is set to BAD. Otherwise, the quality of OUT is set to the worst
quality of the inputs.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Integer

Data Init

Required

112

VCAL

R1-Real

Tuning
Constant

Required

0.016049

MAX

R2-Real

Tuning
Constant

Required

MIN

R3-Real

Tuning
Constant

* TEMP

R4-Real

DESCRIPTION

MIN.
POINT
RECORD

Tuning diagram
number

Specific Volume of
Calibration fluid (lbs
per ft3)

1.0

Maximum Level
Range

Required

0.0

Minimum Level
Range

Selectable

Required

Temperature of
water in reference
leg (F)

LA

PRES

Variable

Required

Drum Pressure
(analog) (PSI)

LA

IN1

Variable

Required

Drum Level
Transmitter (analog)

LA

OUT

Variable

Required

Output variable
(analog)

LA

REF_1100

269

5.59 LEVELCOMP

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may default
the parameter to a value and mark it as "Optional." However, for the control function to be executed properly,
you must enter a value for the parameter.

Function

Where as D = maximum range level - minimum range level


LIN = IN1 - Min

270

REF_1100

5.60 LOG

5.60 LOG
Description
The LOG algorithm performs the mathematical logarithmic function. For the LOG algorithm, the
output equals the base 10 logarithm of the input value plus a bias. If the input value is less than or
equal to zero, the output is set to a large negative number (-3.4 x 1038). The value of IN1 is
checked for invalid real numbers. If IN1 is valid, the quality of IN1 is propagated to the quality of
OUT and the real number value of OUT is written to the point record. If the value of IN1 is invalid
or if the calculated value of OUT written to the point record is invalid, the quality of OUT is set to
BAD.
Note: Other logarithmic algorithms are ANTILOG and NLOG.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init.

Required

68

Tuning Diagram
Number

BIAS

R1-Real

Tuning
Constant

Optional

0.0

Bias Factor (+ or -)

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function
OUT = LOG10 (IN1) + BIAS

REF_1100

271

5.61 LOSELECT

5.61 LOSELECT
Description
The LOSELECT algorithm performs a gain and bias on the four inputs. The output is equal to the
smallest of the four values, according to the quality (QUAL) parameter.
The quality (QUAL) parameter contains three options that enable you to select the value and type
of quality that the output point receives.
The WORSE option selects the lower value for an output point, independent of the qualities of
the two input points. The output point is assigned the worst quality of the four input points.
The SELECTED option also selects the lowest value, independent of the qualities of the four input
points. The output point is assigned the value and quality of the selected input point. However, if
any of the four gained and biased values are equal, the best quality is assigned to the output
point.
The NOTBAD option selects the greater gained and biased input value, providing the qualities of
both inputs are not BAD. The quality of the output is set equal to the quality of the input selected
or to the better quality of the two inputs if the gained and biased input values are equal. If one
input has BAD quality, the gained and bias input value and the quality of the input with the not
BAD quality are assigned to the output. The output is equal to the greater gained and biased input
value and contains BAD quality if both input qualities are BAD.
Note: If the algorithm calculates an invalid output value by using one of the gained and biased
inputs, the value of the other point is used for the output.
If the calculated track output is invalid, then the IN2 track output is equal to the IN2 input, and
the IN1 track output is equal to the IN1 input, if the inputs are valid. If the calculated track
outputs and the input values are invalid, then the IN2 and IN1 track outputs are not updated.
If the algorithm receives an invalid value as an input, or if it calculates an invalid value as an
output, the drop is placed into alarm.
Functional Symbol

272

REF_1100

5.61 LOSELECT
Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status of
the analog tracking point. This algorithm takes the following action in response to the information
found in the analog input signal TRIN:
BIT

DESCRIPTION

ACTION

TRK1 SIGNAL

16

Track

17

Track if lower

Implemented and passed


through. Passed through or set
TRUE when IN1 input is not
selected and IN1 gain is >0*

Implemented and passed


through. Passed through or set
TRUE when IN2 input is not
selected and IN2 gain is >0*

18

Track if higher

Passed through or set TRUE


when IN1 input is not selected
and IN1 gain is >0*

Passed through or set TRUE


when IN2 input is not selected
and IN2 gain is >0*

19

Lower inhibit

Passed through**

Passed through**

20

Raise inhibit

Passed through**

Passed through**

21

Conditional Track

Implemented

Passed through***

22

Not used

Not used

Not used

23

Deviation Alarm

Not used

Not used

24

Local Manual mode

Not used

Not used

25

Manual mode

Not used

Not used

26

Auto mode

Not used

Not used

27

Not Used

Not used

Not used

28

Not Used

Not used

Not used

29

Not Used

Not used

Not used

30

Low limit reached

Low limit reached

Not used

31

High limit reached

High limit reached

Not used

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definitions
given in Setting Tracking Signals (see page 16).
*** If the algorithm is being told to track, then the Conditional track bit is ignored. Otherwise,
the value of the conditional track bit is transferred to all output track points. If the Conditional Track bit
is set in the track input point, the analog value of all output track points is calculated based on the
analog value of the track input point.

REF_1100

273

5.61 LOSELECT
The high and low limit flags, and the tracking signals from the algorithm are output to TRK2,
TRK3, and TRK4, to be used for display and by upstream algorithms. If the output value is invalid,
the quality of OUT is set to BAD. Otherwise, the quality of OUT is set according to the QUALITY
(QUAL) parameter. When tracking, the quality is set to the quality of the track input variable.
Algorithm Record Type= LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init.

Required

IN1G

R1-Real

Tuning
Constant

IN1B

R2-Real

IN2G

IN2B

DESCRIPTION

MIN.
POINT
RECORD

80

Tuning Diagram
Number

Required

1.0

Gain on Input 1. The


gain on the input should
never be initialized to
zero; if it is, the drop is
placed into alarm.

Tuning
Constant

Optional

0.0

Bias on Input 1.

R3-Real

Tuning
Constant

Required

1.0

Gain on input 2. The


gain on the input should
never be initialized to
zero; if it is, the drop is
placed into alarm.

R4-Real

Tuning
Constant

Optional

0.0

Bias on input 2.

IN3G

R8-Real

Tuning
Constant

Optional

1.0

Gain on Input 3. The


gain on the input should
never be initialized to
zero.

IN3B

R9-Real

Tuning
Constant

Optional

0.0

Bias on Input 3.

IN4G

S1-Real

Tuning
Constant

Optional

1.0

Gain on Input 4. The


gain on the input should
never be initialized to
zero.

IN4B

S2-Real

Tuning
Constant

Optional

0.0

Bias on Input 4.

TPSC

R5-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point.

BTSC

R6-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point.

R7-Real

Tuning
Constant

Required

2.5

Track ramp rate (units


per second).

TRAT

274

DEFAULT
VALUE

REF_1100

5.61 LOSELECT

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

QUAL

X1-Byte
Bits 0

Data Init.

Required

DEFAULT
VALUE
WORSE

DESCRIPTION

MIN.
POINT
RECORD
-

Output quality type.


WORSE = Worst quality
of the four inputs is
selected.
SELECTED = Output
point is assigned the
quality of the selected
input point. If the values
of the input points are
equal, the best quality is
selected.
NOTBAD = The output
point is assigned the
quality of the selected
input point, providing the
qualities of the two
inputs are not BAD.If
one input point quality is
BAD, the output is
assigned the quality of
the not BAD input. The
better quality of the two
inputs is selected if the
input values are equal.

IN1

Variable

Required

Input 1 (analog)

LA

TRK1

Variable

Required

Track output value


mode and status signals
for Input 1

LA

IN2

Variable

Required

Input 2 (analog)

LA

TRK2

Variable

Required

Track output value


mode and status signals
for input 2 variable

LA

IN3

Variable

Optional

Input 3 (analog)

LA

TRK 3

Variable

Optional

Track output value


mode and status signals
for input 3.

LA

IN4

Variable

Optional

Input 4 (analog)

LA

TRK 4

Variable

Optional

Track output value


mode and status signals
for input 4.

LA

OUT

Variable

Required

Analog output variable

LA

TRIN

Variable

Optional

Tracking and Limiting


mode signals and
tracking value analog
input variable

LA

REF_1100

275

5.61 LOSELECT

Function
IN1GB = (IN1 x IN1 GAIN) + IN1BIAS
IN2GB = (IN2 x IN2 GAIN) + IN2 BIAS
IN3GB = (IN3 x IN3 GAIN) + IN3BAS
IN4GB = (IN4 x IN4 GAIN) + IN4BAS
IF IN2GB <= IN1GB THEN
OUT = IN2GB
ELSE
OUT = IN1GB
If IN3G <= OUTPUT
OUT = IN3G
If IN4G <= OUTPUT
OUT = IN4G
IF OUT >= TPSC THEN
OUT = TPSC
ELSE
IF OUT <= BTSC THEN
OUT = BTSC

276

REF_1100

5.62 LOWMON

5.62 LOWMON
Description
The LOWMON algorithm is a low signal monitor with reset deadband and a fixed variable limit.
For the LOWMON (Low signal monitor, reset deadband) algorithm, if the input value (IN1) goes
below the fixed set point value (LOSP), the digital output is set TRUE. To clear the output, IN1
must be greater than the set point value plus the deadband. The value of IN1 is checked for
invalid real numbers. If IN1 is invalid, OUT retains its last valid value, and the quality of OUT is set
to BAD. The quality of IN1 is not propagated.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init.

IN1

* LOSP
LODB
OUT

DEFAULT
VALUE

DESCRIPTION

Required

60

Tuning Diagram
Number

Variable

Required

R1-Real

Selectable

Required

R2-Real

Tuning
Constant
Variable

MIN.
POINT
RECORD

Input (analog)

LA

0.0

Set point for the low


signal monitor trip point

LA

Required

0.0

Deadband

Required

Output (digital)

LD, LP

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

Function
IF IN1 < LOSP
THEN OUT = TRUE
ELSE
IF IN1 > (LOSP + LODB)
THEN OUT = FALSE

REF_1100

277

5.63 MAMODE

5.63 MAMODE
Description
MAMODE is used in conjunction with a MASTATION algorithm. This algorithm is used to send the
priorities (raise/lower), inhibits (raise/lower), reject (manual/auto), track bit and Slew Bias
commands to the MASTATION. If Bias is TRUE, then MASTATION can raise/lower the Bias
value. If Bias is FALSE, the Bias value is slewed to zero and the Bias value is not allowed to be
raised or lowered.
The output TRK, AUTO, MAN and LOC points are set TRUE based on the MASTATION's track
point connected to the algorithm.
Raise/Lower Inhibit and Priorities work as follows:

When Raise Inhibit and Lower Inhibit occur at the same time, the MASTATION will be locked.

When Priority Lower and Priority Raise occur at the same time, the MASTATION will ignore
the commands.

When Raise Inhibit and Priority Raise occur at the same time, the output of the MASTATION
will be locked.

When Lower Inhibit and Priority Lower occur at the same time, the output of the MASTATION
will be locked.

Functional Symbol

Bits In Mode:

278

BIT

DESCRIPTION

Bit 0

Priority Lower

Bit 1

Priority Raise

Bit 2

Low Inhibit

Bit 3

High Inhibit

Bit 4

Manual Reject

Bit 5

Auto Reject

Bit 6

Bias Active

Bit 7

Set Tracking Bit

Bit 8

Indicate Low Inhibit

REF_1100

5.63 MAMODE

BIT

DESCRIPTION

Bit 9

Indicate High Inhibit

Bit 10

Local Mode

Bit 11

MASTATION is in manual mode

Bit 12

MASTATON is in auto

Bit 13

MASTATON is told to track

Bit 14

RLI priority lower

Bit 15

RLI priority raise

Note: If a mode word is provided, its contents are decoded and shown in the Control Builder in
the bottom status bar along with the track words. See Ovation Control Builder User Guide for
more information.
Algorithm Record Type = None
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

PLW

Variable

Optional

Priority Lower input

LD, LP

PRA

Variable

Optional

Priority Raise input

LD, LP

LWI

Variable

Optional

Lower Inhibit input

LD, LP

RAI

Variable

Optional

Raise Inhibit input

LD, LP

MRE

Variable

Optional

Manual Reject input

LD, LP

ARE

Variable

Optional

Auto Reject input

LD, LP

BACT

Variable

Optional

Bias Active input

LD, LP

Variable

Optional

Set MASTATION track


bit

LD, LP

TRK

Variable

Optional

MASTATION is based
on TRIN point

LD, LP

AUTO

Variable

Optional

Auto Mode output

LD, LP

MAN

Variable

Optional

Manual Mode output

LD, LP

LOC

Variable

Optional

Local Mode output

LD, LP

MODE

Variable

Optional

Output to MASTATION

LP

STRK

REF_1100

279

5.64 MASTATION

5.64 MASTATION
Description
MASTATION algorithm interfaces a CRT-based soft manual/auto station and an optional Ovation
Loop Interface module card with the functional processor.
The following modes are available: Auto, Manual, and Local.
You select one of the following interfaces with the TYPE Algorithm Field:

SOFT - Soft manual/auto station only

RLI - Ovation Loop Interface module

RVP - Ovation Valve Position module

Functional Symbol

If an Ovation Loop Interface Module is set in TYPE and the Controller is reset, powered-up or
fails, the output is read from the Ovation Loop Interface module card and used initially in the OUT
field of the algorithm. This reports the status of the field device before any action is taken by either
the algorithm or the operator.
Note: The TPSC and BTSC parameters are used to limit the output value of the algorithm.
These values must always be 100% and 0%, respectively when a SLIM interfaces to an
Ovation Loop Interface module card.

280

REF_1100

5.64 MASTATION
Auto Mode
The output equals the gained and biased input plus the bias bar value
(OUT = (IN1 x IN1 GAIN) + IN1 BIAS + BIAS BAR) except:

When the algorithm is told to track, the output equals the track input when the tracking signal
is present. The output ramps from the track input back to the gained and biased input when
the tracking signal is removed.

When a raise inhibit or lower inhibit signal is present, it may prevent the output from following
the input.

The bias bar value is output as an analog value and may be raised or lowered by the
Increase/Decrease set point keys (arrow up/arrow down) on the Operator's Keyboard. This value
is only added to the output value in Auto mode; it has no effect on the output (but still may be
raised or lowered) in Manual or Local mode.
If an Ovation Loop Interface module is selected, the output value is written to the card.
The Increase/Decrease Output keys on the Operator's Keyboard have no effect in this mode.
Manual Mode
The output is raised or lowered by using the Increase/Decrease Output requests. The raise inhibit
and lower inhibit signals override the Operator's Keyboard Increase/Decrease Output requests.
The tracking signal causes the output to equal the track input, regardless of the raise/lower inhibit
signals and the Increase/Decrease Output key requests. The bias bar value has no effect on the
output, but still may be raised and lowered.
If an LI interface is selected, the output value is written to the card. The output value may also be
raised or lowered from the Loop Interface Module (SLIM) in this mode.
Local Mode
This mode is only available if an LI Module, type interface has been selected. The
Increase/Decrease commands from the SLIM directly control the LI card, which is in Local mode.
The algorithm either reads the demand counter on the LI, and causes its output to track the card's
value. In this tracking mode, all directional commands inside the functional processor (for
example, Variable Input, Raise Inhibit and Lower Inhibit) and directional commands from the
Operator's/Alarm Console (for example, Increase, Decrease) have no effect on the algorithm.
Mode Transfers
The algorithm transfers between the Auto, Manual, and Local modes as follows:

The digital reject signal from the MAMODE Algorithm rejects the algorithm from Auto to
Manual mode.

The Auto Request and Manual Request signals from the AUTO and MAN mode request keys
on the Operator's Keyboard switch the algorithm to the desired mode if it is not in Local mode.

If the LI is selected, the SLIM can switch the algorithm between Auto, Manual, and Local
modes.

If the LI is selected, and if there are hardware errors, the algorithm rejects to Local mode. If
the card determines that there is a SLIM communications error while it is in Local mode, it
rejects the card to Manual mode. The algorithm also goes to Manual mode.

REF_1100

281

5.64 MASTATION

If the Quality Reject (REJQ) feature is OFF, then the quality check is not performed on the
input when in Auto mode. If the algorithm is in Auto mode and the quality of the input goes
BAD or not GOOD depending on the Quality Reject flag, then the algorithm rejects to Manual
mode.

Regardless of the REJQ parameter, the input value (IN1) is checked for an invalid value when
the algorithm is in Auto mode. If the algorithm is in Auto mode and the value of the input
becomes invalid, the algorithm rejects to Manual mode. If the algorithm is not in Auto mode
and the operator tries to select Auto mode when the input value is invalid, the algorithm
remains in the same mode and does not reject to Manual mode.

The track input value is also be checked for invalid real numbers when the algorithm is being
told to track. While in Auto mode, if the algorithm is told to track and the track input value is
invalid, the algorithm rejects to Manual mode. In all modes, the track request is ignored when
the track input value is invalid.

On reset/power-up, the algorithm is in Local mode if a LI interface is selected. If a soft


interface is selected, then the algorithm goes to the mode initialized by the First pass mode
(FP) parameter.

On reset/power-up of the LI card, if LI interface is selected and RLI priority (PRLI) is YES,
then the algorithm is set to local mode and the output value is zero. If the LI interface is
selected and RLI priority (PRLI) is NO, then the algorithm changes the RLI card mode from
local to the last mode before the card is powered down. The LI analog output value is
initialized to the last output value before the card was powered off.

The interface keys of the Operator's Keyboard are:

282

KEY

USE

AUTO Function Key

Auto mode request

MAN Function Key

Manual mode request

Set Point Increase Function Key

Raise the bias bar (up arrow)

Set Point Decrease Function Key

Lower the bias bar (down arrow)

Output Increase Function Key

Raise the output (up triangle)

Output Decrease Function Key

Lower the output (down triangle)

REF_1100

5.64 MASTATION
Manual Reject Output Point
The MRE point becomes true for the amount of time specified in the MRET parameter. The
algorithm sets the point true anytime the algorithm goes to manual (unless specified by operator
request).
Operational Symbol
The following symbol illustrates the operation of MASTATION via a SAMA representation.

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog track point. This algorithm takes the action shown in the following table in response
to the information found in the analog input signal TRIN.
BIT

REF_1100

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through, set TRUE on first pass to read


the hardware, or set TRUE when not in Auto
mode.

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

Implemented*

Passed through*

20

Raise inhibit

Implemented

Passed through***

21

Conditional Track

Implemented

Passed through***

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Local mode

283

5.64 MASTATION

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

25

Manual mode

No action

Manual mode

26

Auto mode

No action

Auto mode

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definitions given in
Setting Tracking Signals (see page 16).
*** If the algorithm is being told to track, then the Conditional track bit is ignored. Otherwise, the value of
the conditional track bit is transferred to all output track points. If the Conditional Track bit is set in the
track input point, the analog value of all output track points is calculated based on the analog value of the
track input point.

Note: If a mode word is provided, its contents are decoded and shown in the Control Builder in
the bottom status bar along with the track words. See Ovation Control Builder User Guide for
more information.
The high and low limit flags, the mode and the tracking signals from the algorithm are output to
TOUT, to be used for display and by an upstream algorithm. The configuration of the use of this
algorithm must be specified by the user for correct implementation of the tracking features. If the
upstream algorithm is BALANCER, then the configuration must indicate that this algorithm is
being used with the BALANCER algorithm. Otherwise, the configuration is specified as NORMAL.
If a BAD hardware status error caused the algorithm to reject to Local, the quality remains BAD
on the output and the algorithm remains in Local mode until the error is cleared. If a write error
caused the algorithm to reject to Local, the quality becomes GOOD on the output and the
algorithm remains in Local mode until Local mode is exited via the SLIM.
If there are no hardware errors, the quality of OUT is set to the quality of the track input variable
when tracking. Otherwise, the quality of OUT is GOOD when in Manual mode or set to the quality
of the input when in Auto mode.
If the algorithm calculates an invalid real number for the output in Auto mode, the quality of OUT
is set to BAD and the drop is placed into alarm.
Note: If the algorithm generates an invalid track output value, the IN1 input value is used as the
track output, unless it is invalid. The track output value is not updated if both the calculated track
output and IN1 input values are invalid.
The TPSC and BTSC parameters are used to limit the output value of the algorithm. These values
must always be 100% and 0%, respectively, when interfacing to an LI card which is connected to
a SLIM.

284

REF_1100

5.64 MASTATION
Any output raise or lower request, from the Operator Station is sent directly to the LI configured as
an electric drive card type when it is in Failed Local mode. The LI outputs any SLIM raise or lower
requests for the output, then outputs any controller raise or lower requests for the output to the
digital raise or lower outputs.
When the position feedback signal of an LI configured as an electric drive card type fails, the LI
goes to Failed Local mode and the value of output point is the feedback signal from the drive. The
output bar SLIM display flashes between 0 and 100% to indicate the Failed Local mode.
The options to have runbacks and/or interface to an electric drive on the LI card must be
configured through the I/O Builder.
CAUTION: When using the MASTATION algorithm with a BALANCER algorithm, follow these
guidelines:
1. If MASTATION precedes BALANCER, set the MASTATION CNFG parameter to NORMAL.
2. For all MASTATIONS that immediately follow BALANCER, set MASTATIONS CNFG
parameter to BALANCER.
3. For MASTATIONS that follow MASTATIONS in Guideline 2, set CNFG parameter to
NORMAL.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init

IN1G

R5-Real

IN1B

Required

10

Tuning Diagram
Number

Tuning
Constant

Required

1.0

Gain on input. The


cascade gain should
never be initialized to
zero; if it is, the drop is
placed into alarm.

R6-Real

Tuning
Constant

Optional

0.0

Bias on input

* TPSC

R7-Real

Selectable

Required

100.0

Maximum value of the


output point

LA

* BTSC

R8-Real

Selectable

Required

0.0

Minimum value of the


output point

LA

TPBS

R2-Real

Tuning
Constant

Required

0.0

Maximum value of the


bias bar

BTBS

R3-Real

Tuning
Constant

Required

0.0

Minimum value of the


bias bar

PCNT

X1-Byte

Tuning
Constant

Required

Percent change in first


four seconds

REF_1100

MIN.
POINT
RECORD

285

5.64 MASTATION

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

TIME

X2-Byte

Tuning
Constant

Required

25

Number of seconds
remaining for ramp to
full scale

FP

G0-Integer
Bit 8

Data Init.

Required

MANUAL

First pass mode.


Algorithm goes to this
mode on
reset/power-up:

MANUAL: Manual
mode
AUTO: Auto mode
TYPE

G0-Integer
Bits 0
and 1

Data Init.

Optional

SOFT

Interface Card type:


SOFT: Soft M/A only
RLI: LI card
RVP: VP Card

DRVE

G0-Integer
Bit 9

Data Init

Optional

NO

Electric Drive:

NO
YES

CARD

X5-Byte

Data Init

Optional

PCI Card Number (1,


2)
For OCR161 - 1 or 2
For OCR400 - 1 only

HWAD

B2-Integer

Data Init.

Optional

Card address (see


page 3) for any
hardware interface (in
decimal bytes).

RDNT

X3-Byte
Bit 0

Data Init

Required

NO

Redundant RVP cards:

NO
YES

HWA2

Y0-Integer

Data Init

Required

PRLI

G0-Integer
Bit 2

Data Init

Required

YES

Redundant RVP
hardware address

RLI Priority:

YES
NO

286

PRAR

S1-Real

Tuning
Constant

Optional

2.5

Priority Raise Rate

PRAT

S2-Real

Tuning
Constant

Optional

100.0

Priority Raise Target

PLWR

S3-Real

Tuning
Constant

Optional

2.5

Priority Lower Rate

PLWT

S4-Real

Tuning
Constant

Optional

0.0

Priority Lower Target

REF_1100

5.64 MASTATION

N AM E

REJQ

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

G0-Integer
Bits 6 and 7

Data Init.

Required

DEFAULT
VALUE
BAD

DESCRIPTION

MIN.
POINT
RECORD
-

Quality reject type


(only has meaning if
Manual Inhibit is OFF):
BAD: Algorithm rejects
to Manual mode when
the quality of the IN1
input goes BAD and
the algorithm is in Auto
mode.
NOTGOOD: Algorithm
rejects to Manual mode
when the quality of the
IN1 input is NOT
GOOD and the
algorithm is in Auto
mode.
OFF: The quality of the
IN1 input is not
checked or used to
reject the algorithm to
Manual mode when the
algorithm is in Auto
mode.

CNFG

G0-Integer
Bit 5

Data Init.

Required

NORMAL

Configuration type:

NORMAL: - Upstream
algorithm is not
BALANCER
BALANCER: Upstream algorithm is
BALANCER

TRAT

R1-Real

Tuning

Required

2.5

Track ramp rate

Tuning
Constant

Optional

Manual reject time

Constant
MRET

G1

MRE

Variable

Optional

Manual reject point

LD

IN1

Variable

Required

Input 1 variable analog


input

LA

TOUT

Variable

Required

Track output value


mode and status
signals for Input 1
variable

LA

MODE

Variable

Optional

Output point from the


MAMODE algorithm

LP

OUT

Variable

Required

Analog output variable

LA

REF_1100

287

5.64 MASTATION

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

TRIN

Variable

Optional

Tracking and Limiting


mode signals and
tracking value; analog
Input variable

LA

BIAS

Variable

Optional

Analog bias bar


variable output

LA

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may default
the parameter to a value and mark it as "Optional." However, for the control function to be executed properly,
you must enter a value for the parameter.

288

REF_1100

5.65 MASTERSEQ

5.65 MASTERSEQ
Description
The MASTERSEQ (SEQUENCER, MASTER) algorithm provides a supervisory algorithm to
control sequential execution of control functions. The algorithm utilizes individual DEVICESEQ
algorithms to provide an interface to the logic functions being executed in each step of the
sequence. Each MASTERSEQ algorithm can have a maximum of 30 DEVICESEQ algorithms
attached. Each of the individual DEVICESEQ algorithms is referred to as a device. If more than
30 devices are required, then multiple MASTERSEQ algorithms can be cascaded together.
The algorithm monitors the device that corresponds to each step via a packed group point. This
packed group point is termed the status point. There is a unique status point for each device. The
status point serves as both input and output for the MASTERSEQ and DEVICESEQ algorithms
according to the bit definitions in the accompanying table. A device is considered on or running
when bit zero, in its associated packed group status point, is equal to logic 1. Likewise a device is
considered off or stopped when bit zero is equal to logic zero.
Functional Symbol

REF_1100

289

5.65 MASTERSEQ
User Configuration
The attached devices are numbered sequentially from 1-30 and the associated default status
points are named DV01-DV30 respectively. These 30 devices can be sequenced in any
user-defined order. The 30 integer fields in the algorithm template (ST01-ST30) correspond to the
30 possible steps. The steps are numbered sequentially. In order to associate a particular device
with a step number, the device number is included in the integer field that corresponds to that
step number. A particular device can be included in multiple steps in the sequence. The current
step number being considered by the MASTERSEQ is stored in the STEP output.
In the following sections, a step is considered complete when the DEVICESEQ algorithm
assigned to that step indicates a success or failure or the user overrides the step via the OVRD
input. If a step references a device that does not exist or a zero is specified as the device number
for a particular step, then, that step is skipped and the algorithm increments the step.
The MASTERSEQ algorithm can operate in two modes. These are normal mode and priority
mode. In normal mode, the step numbers increase sequentially and the corresponding devices
are executed accordingly. In priority mode, the step number that corresponds to the device to be
executed is input to the algorithm via the TKIN input. That step is executed when the TMOD input
is TRUE. The order of the steps does not need to be sequential. This allows the sequence to be
dynamically adaptive based on the requirements of a particular application.
The algorithm is reset to the initial state when the RSET input is TRUE regardless of the mode of
operation. Any time the RSET input is TRUE, it causes the algorithm to clear all bits in the status
point, stop any device that is currently running, and set the current step to zero. Refer to the reset
flow chart for a visual depiction of the actions performed when the RSET input is TRUE.
Initial State
The initial step of the algorithm, on power-up, is zero. At step zero, no devices are active. In
normal mode, if the ENBL input is equal to logic one, the algorithm sequences to the first
available step. If the ENBL input is equal to logic 0, then all devices are ignored and remain in
their previous state and the algorithm is inactive. A step is considered to be available if its
associated device number corresponds to a DEVICESEQ algorithm that is connected to the
MASTERSEQ algorithm. If the device number is valid, the device is considered for execution
according to the rules outlined in the following sections. If the ENBL input is FALSE the algorithm
is inactive regardless of the mode of operation.
Normal Mode Step Execution and Control
In the normal mode of operation, the sequential execution of the connected devices is controlled
via the PRCD and OVRD inputs on the algorithm. The PRCD input acts as a start button. If the
PRCD input is TRUE, the algorithm reads the value of the READY and FAILED bits from the
associated status point. Refer to the description of the DEVICESEQ algorithm for details on how
the READY and FAILED bits in the status point are initialized. If the associated device is READY
and not FAILED, the algorithm sets bit one, in the status point that corresponds to that device, to
logic 1.
If the READY bit in the status point is FALSE, the algorithm sets the HOLD output to logic 1. If the
FAILED bit is TRUE, the algorithm sets HOLD output to logic 1. In both of these conditions, the
algorithm remains at the current step.

290

REF_1100

5.65 MASTERSEQ
If while a device is running, the SUCCESS bit becomes TRUE in the corresponding status point,
the algorithm sets bit zero in the status point to logic 1 (thus stopping the device) and the step is
incremented to the next step sequential number. The next device is not started unless the PRCD
input is TRUE.
If while a device is running, the FAILED bit becomes TRUE in the status point, the step number is
not be incremented and both the HOLD and FAIL outputs are set to logic 1. Once this condition is
reached, one of the following actions must occur in order for the step to increment:
A. The FAIL condition must be cleared which causes the FAIL output to be set to logic zero and
the step is incremented to the next sequential number.
B. The OVRD input must be set to logic 1, which causes the step to increment to the next
sequential number.
If at any time during execution, the OVRD input becomes equal to logic 1, the algorithm
increments the current step. If the OVRD input is equal to logic 1 while a particular step is being
executed, the algorithm turns the corresponding device off and the step number is incremented to
the next available step. Any tine the step is incremented as a result of the OVRD input, the
OVERRIDE bit is set to 1 at the status point. This provides a history feature for each step to
indicate how the step number was advanced. If the PRCD and OVRD inputs are equal to logic 1
simultaneously, the OVRD takes precedence.
When the last step in the sequence has completed, the algorithm sets the DONE output logic to 1.
At this point, the algorithm must be reset to begin operation again.
Refer to the normal mode flow chart for a visual depiction of the operation of the algorithm when
operating in normal mode.
Priority Mode Step Execution and Control
In priority mode, the step number to be executed is determined by the analog value of the TKIN
input. Any fractional value to the right of the decimal point, in the TKIN input value,is truncated.
This gives you the ability to dynamically steer the algorithm to any desired step in the sequence.
The value of the TKIN input is used as the step number only if the TMOD input is TRUE. Thus the
algorithm is considered to be in priority mode when the step number is determined from the TKIN
input. As in normal mode, the PRCD input must be TRUE in order for the execution of the step to
begin.
If the value of TKIN is equal to a step that corresponds to a valid device, the TMOD input is TRUE
and PRCD input is FALSE, the algorithm sets the current step to the TKIN value. However, the
step is not executed until the PRCD input becomes TRUE. When operating in Priority Mode, the
algorithm ignores the OVRD input. If the value of the TKIN refers to a device that does not exist,
the algorithm remains at the previous step. If a device is running, the TKIN and TMOD inputs are
ignored until the step completes.
If the MODE parameter is advisory, TKIN must be less than the maximum number of steps
(NMIN). If the MODE parameter is priority, then TKIN must be less than 30 (the total number of
allowed steps). This applies only in priority mode. All other checks for valid device apply no matter
what the priority MODE parameter is set to.
If the READY bit, in the status point, is TRUE and the FAILED bit is FALSE, the algorithm issues
a start to the associated device. This is accomplished by setting bit zero in the status point to logic
1.

REF_1100

291

5.65 MASTERSEQ
If the READY bit in the status point is FALSE, the algorithm sets the HOLD output logic to 1. If the
FAILED bit is TRUE, the algorithm sets both the HOLD and FAIL output to logic 1. In both of
these conditions, the algorithm remains at the current step.
If while a device is running, the SUCCESS bit becomes TRUE in the corresponding status point,
the algorithm sets bit zero in the status point logic 0 (thus stopping the device). The step is set to
the value of the TKIN input if it is a valid step. The next device is not started unless the PRCD
input is TRUE.
If while a device is running, the FAILED bit becomes TRUE in the status point, both the HOLD
and FAIL outputs are set to logic 1. When this condition is reached, the current step can be
changed via the TKIN and TMOD inputs.
Refer to the priority mode flow chart for a visual depiction of the operation of the algorithm when
operating in priority mode.
If any time during the priority mode operation the TMOD input becomes FALSE, the algorithm
reverts to normal mode operation. The hybrid mode section outlines the operation of the algorithm
using a combination of normal mode and priority mode.
Hybrid Mode Operation
It is possible to operate the algorithm in a hybrid mode where some steps are performed in
normal mode and others in Priority Mode. The mode switch is controlled by the digital value of the
TMOD input and thus can be done dynamically. When operating in normal mode, the normal
mode rules outlined above apply and when operating in priority mode, the priority mode rules
above apply.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Integer

Data Init

Required

MODE

X2-Byte

Data Init

Required

Advisory

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram
Number

Mode of operation:

Advisory
Priority

292

NMIN

X1-Byte

Tuning
Constant

Required

Number of Steps

ST01

G0- Integer

Tuning
Constant

Required

Device Number for


Step 1

ST02

G1- Integer

Tuning
Constant

Required

Device Number for


Step 2

ST03

G2- Integer

Tuning
Constant

Required

Device Number for


Step 3

ST04

G3- Integer

Tuning
Constant

Required

Device Number for


Step 4

REF_1100

5.65 MASTERSEQ

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

ST05

G4- Integer

Tuning
Constant

Required

Device Number for


Step 5

ST06

G5- Integer

Tuning
Constant

Required

Device Number for


Step 6

ST07

G6- Integer

Tuning
Constant

Required

Device Number for


Step 7

ST08

G7- Integer

Tuning
Constant

Required

Device Number for


Step 8

ST09

G8- Integer

Tuning
Constant

Required

Device Number for


Step 9

ST10

G9- Integer

Tuning
Constant

Required

Device Number for


Step 10

ST11

B0- Integer

Tuning
Constant

Required

Device Number for


Step 11

ST12

B1- Integer

Tuning
Constant

Required

Device Number for


Step 12

ST13

B2- Integer

Tuning
Constant

Required

Device Number for


Step 13

ST14

YU- Integer

Tuning
Constant

Required

Device Number for


Step 14

ST15

B4- Integer

Tuning
Constant

Required

Device Number for


Step 15

ST16

B5- Integer

Tuning
Constant

Required

Device Number for


Step 16

ST17

B6- Integer

Tuning
Constant

Required

Device Number for


Step 17

ST18

B7- Integer

Tuning
Constant

Required

Device Number for


Step 18

ST19

B8- Integer

Tuning
Constant

Required

Device Number for


Step 19

ST20

B9- Integer

Tuning
Constant

Required

Device Number for


Step 20

ST21

C0- Integer

Tuning
Constant

Required

Device Number for


Step 21

ST22

C1- Integer

Tuning
Constant

Required

Device Number for


Step 22

ST23

C2- Integer

Tuning
Constant

Required

Device Number for


Step 23

ST24

C3- Integer

Tuning
Constant

Required

Device Number for


Step 24

ST25

C4- Integer

Tuning
Constant

Required

Device Number for


Step 25

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

293

5.65 MASTERSEQ

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

ST26

C5- Integer

Tuning
Constant

Required

Device Number for


Step 26

ST27

C6- Integer

Tuning
Constant

Required

Device Number for


Step 27

ST28

C7- Integer

Tuning
Constant

Required

Device Number for


Step 28

ST29

C8- Integer

Tuning
Constant

Required

Device Number for


Step 29

ST30

YT- Integer

Tuning
Constant

Required

Device Number for


Step 30

ENBL

Variable

Required

MASTERSEQ is
inoperative anytime
this signal is FALSE.

LD, LP

OVRD

Variable

Required

Proceed to next step


ignoring any status
of the current step.

LD, LP

PRCD

Variable

Required

Execute the current


step.

LD, LP

RSET

Variable

Required

Re-Initializes
algorithm to step
zero.

LD, LP

TKIN

Variable

Optional

Dynamic step value.

LA

TMOD

Variable

Optional

Activate Priority
mode.

LD, LP

FAIL

Variable

Required

TRUE When a
DEVICESEQ
algorithm reports a
failure.

LD, LP

HOLD

Variable

Required

TRUE when
algorithm is waiting
to execute current
step.

LD, LP

DONE

Variable

Required

TRUE When Master


completes last
defined step. (Can
be used to daisy
chain multiple
MASTERSEQ).

LD, LP

STEP

Variable

Required

Number of current
step

LA

(1-30)
DV01

Variable

Required

Communication with
Device Algorithm 1

LP

(See Bit Definitions)

294

REF_1100

5.65 MASTERSEQ

N AM E

DV02

LC ALG.
RECORD
FIELD
-

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Communication with
Device Algorithm 2

LP

(See Bit Definitions).


DV03

Variable

Optional

Communication with
Device Algorithm 3

LP

(See Bit Definitions).


DV04

Variable

Optional

Communication with
Device Algorithm 4

LP

(See Bit Definitions).


DV05

Variable

Optional

Communication with
Device Algorithm 5

LP

(See Bit Definitions).


DV06

Variable

Optional

Communication with
Device Algorithm 6

LP

(See Bit Definitions).


DV07

Variable

Optional

Communication with
Device Algorithm 7

LP

(See Bit Definitions).


DV08

Variable

Optional

Communication with
Device Algorithm 8

LP

(See Bit Definitions).


DV09

Variable

Optional

Communication with
Device Algorithm 9

LP

(See Bit Definitions).


DV10

Variable

Optional

Communication with
Device Algorithm 10

LP

(See Bit Definitions).


DV11

Variable

Optional

Communication with
Device Algorithm 11

LP

(See Bit Definitions).


DV12

Variable

Optional

Communication with
Device Algorithm 12

LP

(See Bit Definitions).


DV13

Variable

Optional

Communication with
Device Algorithm 13

LP

(See Bit Definitions).


DV14

Variable

Optional

Communication with
Device Algorithm 14

LP

(See Bit Definitions).

REF_1100

295

5.65 MASTERSEQ

N AM E

DV15

LC ALG.
RECORD
FIELD
-

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Communication with
Device Algorithm 15

LP

(See Bit Definitions).


DV16

Variable

Optional

Communication with
Device Algorithm 16

LP

(See Bit Definitions).


DV17

Variable

Optional

Communication with
Device Algorithm 17

LP

(See Bit Definitions).


DV18

Variable

Optional

Communication with
Device Algorithm 18

LP

(See Bit Definitions).


DV19

Variable

Optional

Communication with
Device Algorithm 19

LP

(See Bit Definitions).


DV20

Variable

Optional

Communication with
Device Algorithm 20

LP

(See Bit Definitions).


DV21

Variable

Optional

Communication with
Device Algorithm 21

LP

(See Bit Definitions).


DV22

Variable

Optional

Communication with
Device Algorithm 22

LP

(See Bit Definitions).


DV23

Variable

Optional

Communication with
Device Algorithm 23

LP

(See Bit Definitions).


DV24

Variable

Optional

Communication with
Device Algorithm 24

LP

(See Bit Definitions).


DV25

Variable

Optional

Communication with
Device Algorithm 25

LP

(See Bit Definitions).


DV26

Variable

Optional

Communication with
Device Algorithm 26

LP

(See Bit Definitions).


DV27

Variable

Optional

Communication with
Device Algorithm 27

LP

(See Bit Definitions).

296

REF_1100

5.65 MASTERSEQ

N AM E

LC ALG.
RECORD
FIELD

DV28

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Communication with
Device Algorithm 28

LP

(See Bit Definitions).


DV29

Variable

Optional

Communication with
Device Algorithm 29

LP

(See Bit Definitions).


DV30

Variable

Optional

Communication with
Device Algorithm 30

LP

(See Bit Definitions).

Status Bit Definitions


BIT
NUMBER

REF_1100

ORIGINATOR

SIGNAL N AM E

DESCRIPTION

MASTERSEQ

GO

Signal to Device to Begin Step.

DEVICESEQ

FAILED

Signal to MASTERSEQ that Current Step


Encountered a Failure.

DEVICESEQ

READY

Signal to MASTERSEQ that the low-level Logic


is Ready to Receive a Remote Start Command.

DEVICESEQ

SUCCESS

MASTERSEQ

INSTEP

MASTERSEQ

OVERRIDE

MASTERSEQ

RESET

DEVICESEQ

FROZEN

This bit is TRUE when DEVICESEQ has Frozen


updates to the status point (see DEVICESEQ
section for data)

8 - 15

Reserved for
future use.

Signal to MASTERSEQ that current Step


Completed Successfully.
Signal from Master that the step is currently
being Executed.
When TRUE indicates that the OVRD input was
used to Increment the step.
MASTERSEQ sets this bit logic 1 when reset
input is TRUE.

297

5.65 MASTERSEQ

298

REF_1100

5.65 MASTERSEQ

REF_1100

299

5.66 MEDIANSEL

5.66 MEDIANSEL
Description
The MEDIANSEL (Median value selector, quality and deviation checks) algorithm monitors analog
transmitter inputs for quality and deviation from each other. The output (OUT) of the algorithm is
the median of the three analog inputs as long as there are no Quality or Deviation Alarms.
Otherwise, the algorithm determines the best or most probably correct input or average of inputs
for the output value. In addition to the output signal (OUT), there is a High Alarm analog output
(HI), a Low Alarm analog output (LO) and 12 digital signals, indicating the states of the inputs,
which may be output as individual digital points or as a packed digital record.
Functional Symbol

The type of quality on the input that sets the Quality Alarm for that point is initialized in the Control
Indicator Word. The Control Deviation Alarm digital output signal between two points is set TRUE
when the difference of the two points is greater than the user-initialized Control Deviation
Deadband (CNDB) and the two points are not in Quality Alarm. Also, the Alarm Deviation Alarm
digital output signal between two points is set TRUE when the difference of the two points is
greater than the user-initialized Alarm Deviation Deadband (ALDB) and the two points are not in
Quality Alarm. The Alarm Deviation Deadband should be less than the Control Deviation
Deadband for the algorithm to function properly.
If all three transmitters are in Quality Alarm, the output value remains the last GOOD value. In
addition, if all three transmitters are in quality alarm or if the output (OUT) value is invalid, the
quality of the output is set to BAD.
If two transmitters are in Quality Alarm, the output value is the value of the transmitter that is
not in Quality Alarm.
If one transmitter is in Quality Alarm and there is no Control Deviation Alarm between the
two transmitters not in Quality Alarm, the output value is the average of the two transmitters
not in Quality Alarm.

300

REF_1100

5.66 MEDIANSEL
If one transmitter is in Quality Alarm and there is a Control Deviation alarm between the
two transmitters not in Quality Alarm, the output value is:
1. The higher value of the two transmitters not in Quality Alarm if the higher value is greater than
the High Alarm Monitor value (HMTR) and the lower value is not less than the Low Alarm
Monitor value (LMTR).
OR
2. The lower value of the two transmitters not in Quality Alarm if the lower value is less than the
Low Alarm Monitor value and the higher value is not greater than the High Alarm Monitor
value.
OR
3. Either the higher or lower value of the two transmitters not in Quality Alarm, depending on the
High/Low Output parameter initialized in the Control Indicator Word.
If none of the transmitters are in Quality Alarm but all three transmitters are in Control
Deviation with each other, the output value is:
1. The highest value of the transmitters if the higher value is greater than the High Alarm Monitor
value (HMTR) and the lowest value is not less than the Low Alarm Monitor value (LMTR).
OR
2. The lowest value of the transmitters if the lowest value is less than the Low Alarm Monitor
value and the highest value is not greater than the High Alarm Monitor value.
OR
3. Either the highest or lowest value of the transmitters, depending on the High/Low Output
parameter initialized in the Control Indicator Word.
If none of the transmitters are in Quality Alarm but one transmitter is in Control Deviation
with both of the other two transmitters and there is no Control Deviation alarm between the
other two transmitters, the output value is the average of the two transmitters not in Control
Deviation Alarm with each other. If none of the transmitters are in Quality Alarm and two
transmitters are in Control Deviation Alarm with each other but not with the third transmitter, the
output value is the value of the third (median) transmitter.
If none of the transmitters are in Quality or Control Deviation Alarm and either all or none
of the three transmitters are in Alarm Deviation with each other, the output is the median
value of the transmitters.
If none of the transmitters are in Quality or Control Deviation Alarm but one transmitter is
in Alarm Deviation with both of the other two transmitters and there is no Alarm Deviation
between the other two transmitters, the output value is the average of the two transmitters not
in Alarm Deviation with each other.
If none of the transmitters are in Quality or Control Deviation Alarm and two transmitters
are in Alarm Deviation with each other but not with the third transmitter, the output value is
the value of the third (median) transmitter.
If none of the transmitters are in Control Deviation Alarm with each other, the high alarm
output and low alarm output values are set equal to the output value. Otherwise, the high alarm
output value is set equal to the highest transmitter value not in Quality Alarm, and the low alarm
output value is set equal to the lowest transmitter value not in Quality Alarm.

REF_1100

301

5.66 MEDIANSEL
The Transmitter Quality Alarm digital output (XBQ) is set TRUE when all three transmitters are in
Quality Alarm. The Transmitter A Quality Alarm digital output (XABQ) is set TRUE when
Transmitter A is in Quality Alarm. The Transmitter B Quality Alarm digital output (XBBQ) is set
TRUE when Transmitter B is in Quality Alarm. The Transmitter C Quality Alarm digital output
(XCBQ) is set TRUE when Transmitter C is in Quality Alarm.
The Transmitter A - Transmitter B Control Deviation Alarm digital output (ABDC) is set TRUE
when the deviation between Transmitter A and Transmitter B is greater than the Control Deviation
Deadband. The Transmitter A - Transmitter C Control Deviation Alarm digital output (ACDC) is set
TRUE when the deviation between Transmitter A and Transmitter C is greater than the Control
Deviation Deadband. The Transmitter B - Transmitter C Control Deviation Alarm digital output
(BCDC) is set TRUE when the deviation between Transmitter B and Transmitter C is greater than
the Control Deviation Deadband.
The Transmitter A - Transmitter B Alarm Deviation Alarm digital output (ABDA) is set TRUE when
the deviation between Transmitter A and Transmitter B is greater than the Alarm Deviation
Deadband. The Transmitter A - Transmitter C Alarm Deviation Alarm digital output (ACDA) is set
TRUE when the deviation between Transmitter A and Transmitter C is greater than the Alarm
Deviation deadband. The Transmitter B - Transmitter C Alarm Deviation Alarm digital output
(BCDA) is set TRUE when the deviation between Transmitter B and Transmitter C is greater than
the Alarm Deviation Deadband.
The Transmitter Malfunction Alarm digital output (XALM) is set TRUE when there is a Quality
Alarm on any of the three signals or when the deviation between any two transmitter values is
greater than either the Control Deviation Deadband or the Alarm Deviation Deadband.
The Manual Reject digital output (MRE) is set TRUE:
1. When all three transmitters are in Quality Alarm.
OR
2. When there is one point in Quality Alarm and there is a Control Deviation Alarm between the
two points not in Quality Alarm.
OR
3. When all three transmitters are in Control Deviation with each other.
The Manual Reject digital output is either a one-shot signal or a maintained output, depending on
the MRE output type that is initialized in the Control Indicator Word (CNTL).
The Packed output signal (PBPT) contains the Manual Reject output, the Transmitter Malfunction
Alarm, the Quality Alarms, the Control Deviation Alarms, and the Alarm Deviation Alarms for all
three transmitters.
The HOLD parameter holds the output value and quality for a desired number of loops when a
manual reject occurs.
The Interface keys on the Operators Keyboard are:
FUNCTION KEY

302

USE

P1

Median Mode Requested

P2

Transmitter A Mode requested

P3

Transmitter B Mode requested

REF_1100

5.66 MEDIANSEL

FUNCTION KEY

USE

P4

Transmitter C Mode requested

P5

Toggle the inhibiting of the control deviation alarm check on the manual
reject (MRE) output

Note: If the transmitter selected goes to BAD quality, then the algorithm changes mode to
median.
Invalid Numbers and Quality
The transmitter's input values to the algorithms are checked for invalid real numbers. If an input
value contains an invalid real number, it is not used in generating the output of the algorithm.
However, the Transmitter Quality Alarm digital output for the point is set to TRUE if the input value
is invalid.
If the algorithm calculates an invalid real number for the output, the quality of the output is set to
BAD and the output value is invalid.
INSEL parameter
The INSEL parameter determines which inputs of the MEDIANSEL algorithm are being used to
calculate the output. The Signal Diagram application displays green circles around the active pins.
If none of the pins are selected, then nothing will display. You can also view this information via
the Process Diagram System graphics as well. Refer to Ovation Operator Station User Guide for
more information on the Signal Diagrams application and the Process Diagram System graphics.
The MEDIANSEL algorithm activates individual bits in the Y0 field depending on the conditions in
the description field. If a signal is active, that signal is being used in the output calculation.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init.

Required

REF_1100

DEFAULT
VALUE
62

DESCRIPTION

Tuning Diagram
Number.

MIN.
POINT
RECORD
-

303

5.66 MEDIANSEL

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

CNTL

X1-Byte

Data Init.

Optional

DEFAULT
VALUE
0

DESCRIPTION

MIN.
POINT
RECORD
-

Control Indicator Word:


Bit 0 = MRE Output
Type
(0 = One-shot signal
1 = Maintained signal)

Bit 1 = High/Low Output


(0 = Selected high
GOOD quality output
1 = Select low GOOD
quality output)

Bit 2 = Quality Alarm


Type
(0 = BAD Quality Alarm
1 = Not GOOD Quality
Alarm)

304

ALDB

R1-Real

Tuning
Constant

Required

0.0

Alarm Deviation
Deadband.

CNDB

R2-Real

Tuning
Constant

Required

0.0

Control Deviation
Deadband.

HMTR

R3-Real

Tuning
Constant

Required

0.0

High Alarm monitor


value.

LMTR

R4-Real

Tuning
Constant

Required

0.0

Low Alarm monitor


value.

HOLD

X7-Byte

Data Init

Required

Hold output during


manual reject (number
based on loop time).

XA

Variable

Required

Input (analog);
Transmitter A.

LA

XB

Variable

Required

Input (analog);
Transmitter B.

LA

XC

Variable

Required

Input (analog);
Transmitter C.

LA

OUT

Variable

Required

Output (analog); median


value.

LA

HI

Variable

Optional

Output (analog); High


Alarm monitoring value.

LA

LO

Variable

Optional

Output (analog); Low


Alarm monitoring value.

LA

XBQ

Variable

Optional

Output (digital); all


transmitters in Quality
Alarm.

LD, LP

REF_1100

5.66 MEDIANSEL

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

XABQ

Variable

Optional

Output (digital); Quality


Alarm for Transmitter A.

LD, LP

XBBQ

Variable

Optional

Output (digital); Quality


Alarm for Transmitter B.

LD, LP

XCBQ

Variable

Optional

Output (digital); Quality


Alarm for Transmitter C.

LD, LP

ABDC

Variable

Optional

Output (digital); Control


Deviation Alarm
between Transmitters A
and B.

LD, LP

ABDA

Variable

Optional

Output (digital); Alarm


Deviation Alarm
between Transmitters A
and B.

LD, LP

ACDC

Variable

Optional

Output (digital); Control


Deviation Alarm
between Transmitter A
and C.

LD, LP

ACDA

Variable

Optional

Output (digital); Alarm


Deviation Alarm
between Transmitters A
and C.

LD, LP

BCDC

Variable

Optional

Output (digital); Control


Deviation Alarm
Transmitters B and C

LD, LP

BCDA

Variable

Optional

Output (digital); Alarm


Deviation Alarm
between Transmitters B
and C.

LD, LP

XALM

Variable

Optional

Output (digital);
Transmitter Malfunction
Alarm.

LD, LP

MRE

Variable

Optional

Output (digital); manual


reject.

LD, LP

REF_1100

305

5.66 MEDIANSEL

N AM E

PBPT

LC ALG.
RECORD
FIELD
-

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Output (packed digital)


(bit and description
shown):

LP

0 = Manual reject
1 = Transmitter
malfunction
2 = All transmitters in
Quality Alarm
3 = Quality Alarm for
Transmitter A
4 = Quality Alarm for
Transmitter B
5 = Quality Alarm for
Transmitter C
6 = Alarm deviation
between Transmitters A
and B
7 = Alarm deviation
between Transmitters
A and C
8 = Alarm deviation
between Transmitters B
and C
9 = Control deviation
between Transmitters A
and B
10 = Control deviation
between Transmitters A
and C
11 = Control deviation
between Transmitters B
and C
12 = Inhibit Control
Deviation Check for
MRE Output
13 = Transmitter A
mode
14 = Transmitter B
mode
15 = Transmitter C
mode

306

REF_1100

5.66 MEDIANSEL

N AM E

INSEL*

LC ALG.
RECORD
FIELD
Y0

TYPE

REQUIRED/
OPTIONAL

Alg. Init.

Required

DEFAULT
VALUE
0

DESCRIPTION

MIN.
POINT
RECORD

Input Selected:

--

Bit 1 - Signal A
0 = Not Active
1 = Active
Bit 2 - Signal B
0 = Not Active
1 = Active
Bit 3 - Signal C
0 = Not active
1 = Active
* If no inputs are selected, it indicates one of the following:
the inputs are all BAD quality.
the output is scan removed.
Manual Reject is activated with HOLD.
the calculated output is invalid.

REF_1100

307

5.67 MULTIPLY

5.67 MULTIPLY
Description
The MULTIPLY algorithm multiplies two gained and biased inputs. The output of the MULTIPLY
algorithm is the product of the two individually gained and biased inputs.
Note: If the algorithm receives an invalid value as an input, or if it calculates an invalid value as
the output, the drop is placed into alarm.
Functional Symbol

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog point. This algorithm takes the following action in response to the information found
in the analog input signal TRIN:
BIT

308

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

No action

Passed through**

20

Raise inhibit

No action

Passed through**

21

Conditional Track

Implemented

Passed through***

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Not used

No action

Not used

28

Not used

No action

Not used

29

Not used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

REF_1100

5.67 MULTIPLY

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definitions given
in Setting Tracking Signals (see page 15).
*** If the algorithm is being told to track, then the Conditional track bit is ignored. Otherwise, the
value of the conditional track bit is transferred to all output track points. If the Conditional Track bit
is set in the track input point, the analog value of all output track points is calculated based on the
analog value of the track input point.

The high and low limit flags and the tracking signals from the algorithm are output to TOUT, to be
used for display and by an upstream algorithm. If the output value is invalid, the quality of OUT is
set to BAD. Otherwise, the quality of OUT is set to the worst quality of the two inputs when not in
tracking mode. When tracking, the quality is set to the quality of the track input variable.
Note: If the algorithm generates an invalid track output value, the IN1 input value is used as the
track output, unless it is invalid. The track output value is not updated if both the calculated track
output and IN1input values are invalid.
Algorithm Record Type= LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Integer

Data Init.

Required

82

Tuning Diagram Number

IN1G

R1-Real

Tuning
Constant

Required

1.0

Gain on input 1. The gain


on input 1 should never be
initialized to zero; if it is,
the drop is placed into
alarm.

IN1B

R2-Real

Tuning
Constant

Required

0.0

Bias on input 1

IN2G

R3-Real

Tuning
Constant

Required

1.0

Gain on input 2

IN2B

R4-Real

Tuning
Constant

Required

0.0

Bias on input 2

TPSC

R5-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

BTSC

R6-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point

TRAT

R7-Real

Tuning
Constant

Required

2.5

Track ramp rate (units per


second)

IN1

Variable

Required

TOUT

Variable

Required

REF_1100

DESCRIPTION

Analog input 1
Track output value mode
and status signals for input
1 variable

MIN.
POINT
RECORD

LA
LA

309

5.67 MULTIPLY

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN2

Variable

Required

Analog input 2

LA

OUT

Variable

Required

Analog output variable

LA

TRIN

Variable

Optional

Tracking and limiting


mode signals and tracking
value; analog input
variable

LA

Function
IN1GB= (IN1 x IN1G) + IN1B
IN2GB = (IN2 x IN2G) + IN2B
OUT = IN2GB x IN1GB
IF OUT >= TPSC THEN
OUT = TPSC
ELSE
IF OUT <= BTSC THEN
OUT = BTSC

310

REF_1100

5.68 NLOG

5.68 NLOG
Description
The NLOG algorithm performs the mathematical natural logarithmic function. For the NLOG
algorithm, the output equals the natural logarithm of the input value plus a bias. If the input value
38
is less than or equal to zero, the output is set to a large negative number (-3.4 x 10 ).
Note: Other logarithmic algorithms are ANTILOG (see page 72) and LOG. (see page 271)
Invalid Numbers and Quality
The quality of the input is propagated to the output. However, if the algorithm calculates an invalid
value for the output, the quality of the output is set to BAD, and the output value is invalid.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init.

Required

BIAS

R1-Real

Tuning
Constant

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

70

Tuning Diagram
Number

Optional

0.0

Bias

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function
OUT = NATURAL LOG OF IN1 + BIAS

REF_1100

311

5.69 NOT

5.69 NOT
Description
The NOT algorithm is a logical NOT gate. For the NOT algorithm, the output is the logical NOT of
the input.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (digital)

LD, LP

OUT

Variable

Required/
Optional

Output (digital)

LD, LP

Note: Output is required if connecting to anything other than OR or AND.


Function
IF IN1 = TRUE
THEN OUT = FALSE
ELSE
OUT = TRUE

312

REF_1100

5.70 OFFDELAY

5.70 OFFDELAY
Description
The OFFDELAY algorithm extends the time that the output is TRUE. On a FALSE-to-TRUE state
level change of the IN1 (Pulse Stretcher), the Timer ACTUAL (ACT) is set to zero and the OUT
output is TRUE.
On a subsequent TRUE-to-FALSE state level change of the IN1, the ACTUAL (ACT) begins
accumulating time. When ACTUAL (ACT) is equal to the TARGET (TARG), accumulation stops,
the OUT output is set to FALSE, and ACTUAL (ACT) retains data until it is reset by another
FALSE-to-TRUE state level change of the IN1 input.
If the TARGET (TARG) value specifies a time which is less than or equal to the sheet scan time, it
is permissible for the OUT output to be set FALSE on the same scan that the IN1 input changed
from TRUE to FALSE.
The timers are re-triggerable (that is, the ACTUAL (ACT) can be reset before it reaches the
TARGET (TARG) value).
The OUT output is de-energized if (ACT >= TARG).
If the TARGET (TARG) or ACTUAL (ACT) operands contain a negative or invalid number, OUT is
set to FALSE but no other operation takes place.
When a Controller resets, if IN1 is FALSE, ACTUAL (ACT) remains unchanged and the OUT
output is TRUE according to the comparison between the ACTUAL (ACT) and the TARGET
(TARG). However, if the ACTUAL (ACT) has an initial value, then the ACTUAL'S (ACT's) initial
value is compared to TARG. If IN1 is TRUE, ACTUAL (ACT) is set to zero and OUT is TRUE.
In redundant Controllers, during Fail over, if IN1 is FALSE, ACTUAL (ACT) remains unchanged
and both outputs are TRUE according to the comparison between the ACTUAL (ACT) and
TARGET (TARG). If IN1 is TRUE, ACT is set to zero and OUT is TRUE.
An optional time base (minimum of 0.1 second) can be entered in the R1 field of the algorithm
record. The default time base is 1 second.
Functional Symbol

REF_1100

313

5.70 OFFDELAY
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init

BASE

R1-Real

IN1

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Required

97

Tuning Diagram
number

Tuning
Constant

Required

1.0

Time Base in
seconds (minimum
0.1 second, default
1.0 seconds)

Variable

Required

Input (digital)

LD, LP

* TARG

R2-Real

Selectable

Required

0.0

Delay Time number


(analog)

LA

* ACT

R3-Real

Selectable

Required

0.0

Output (analog)

LA

Variable

Required

Output (digital)

LD, LP

OUT

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

Function (Timing Diagram)

(IN1)

TARGET

314

TARGET

REF_1100

5.71 ONDELAY

5.71 ONDELAY
Description
The ONDELAY algorithm delays the time that the output is set to TRUE. When the ONDELAY
algorithm is enabled with the IN1 input TRUE, the Timer ACTUAL (ACT) accumulates time per
the specified Time BASE (BASE) until it equals the Timer TARGET (TARG). At this point, it stops
accumulating and remains at the TARGET (TARG) value and OUT goes to TRUE.
If the IN1 input changes from TRUE to FALSE while the Timer is enabled (ENBL), the ACTUAL
(ACT) retains the current value. When the IN1 input changes back to the TRUE state, the
ACTUAL (ACT) resumes accumulating time.
You can reset ACTUAL (ACT) to zero at any time by making the ENBL input FALSE. This causes
OUT to go FALSE. Typically, however, the IN1 and ENBL inputs are tied together so that
ONDELAY acts as a classical timer.
If the ACTUAL (ACT) value is equal to or greater than the TARGET (TARG) value, transitions of
the IN1 input have no effect.
Of special consideration is the case when the Timer TARGET (TARG) equals zero. In this
instance, the OUT output follows the IN1 input as long as the Timer is enabled.
If the TARGET (TARG) specifies a time which is less than or equal to the sheet scan time, it is
permissible for the OUT output to be TRUE on the first scan that the IN1 and ENBL inputs are
TRUE.
If the TARGET (TARG) or ACTUAL (ACT) operands contain a negative or invalid number, OUT is
set to FALSE but no other operation takes place.
When a Controller resets, if ENBL is TRUE, ACTUAL (ACT) remains unchanged and the OUT
output is energized according to the comparison between ACTUAL (ACT) and TARGET (TARG).
However, if ACTUAL (ACT) has an initial value, then ACT's initial value is compared to TARGET
(TARG). If ENBL is FALSE, ACTUAL (ACT) is set to zero and OUT is FALSE.
In redundant Controllers, during Failover, if ENBL is energized, ACTUAL (ACT) remains
unchanged and both outputs are energized according to the comparison between ACTUAL (ACT)
and TARGET (TARG). If ENBL is FALSE, ACTUAL (ACT) is set to zero and OUT is FALSE.
An optional time base (minimum of 0.1 second) can be entered in the R1 field of the algorithm
record. The default time base is 1 second.
Functional Symbol

REF_1100

315

5.71 ONDELAY
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init

Required

96

Tuning Diagram
number

BASE

R1-Real

Tuning
Constant

Required

1.0

Time Base seconds


(minimum 0.1
second, default 1.0
seconds)

IN1

Variable

Required

Input (digital)

LD, LP

ENBL

Variable

Required

Input (digital)

LD, LP

* TARG

R2-Real

Selectable

Required

0.0

Delay Time number


(analog)

LA

* ACT

R3-Real

Selectable

Required

0.0

Output (analog)

LA

Variable

Required

Output (digital)

LD, LP

OUT

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

Function (Tuning Diagram)

(IN1)

TARGET

316

TARGET

TARGET

REF_1100

5.72 ONESHOT

5.72 ONESHOT
Description
The ONESHOT algorithm sets the output TRUE on a transition for a specified period of time. On a
FALSE-to-TRUE transition of the IN1 input, the OUT output energizes. The ACTUAL (ACT) is
reset to zero and immediately begins accumulating time, and continues to accumulate until it
equals the TARGET (TARG) or until another FALSE-to-TRUE transition of the IN1 input has
occurred.
When ACTUAL (ACT) equals TARGET (TARG), the OUT output de-energizes and the ACTUAL
(ACT) retains its value until a FALSE-to-TRUE transition of the IN1 input has occurred.
The function is retriggerable (that is, if the ACTUAL (ACT) is accumulating time and the IN1 input
makes a FALSE-to-TRUE transition before it reaches the TARGET (TARG) value, the function is
reset and begins accumulating from time zero).
If the ACTUAL (ACT) is greater than the TARGET (TARG), it is inhibited from accumulating time
and the OUT output is de-energized.
If TARGET (TARG) equals zero, the OUT output never energizes.
If the TARGET (TARG) or ACTUAL (ACT) operands contain a negative or invalid number, OUT is
de-energized but no other operation takes place.
When a Controller resets, regardless of the IN1 state, ACTUAL (ACT) remains unchanged and
OUT output is energized according to the comparison between ACTUAL (ACT) and TARGET
(TARG). However, if ACTUAL (ACT) has an initial value, then ACTUAL's (ACT) initial value is
compared to TARGET (TARG).
In redundant Controllers, during Failover, regardless of the IN1 state, ACTUAL (ACT) remains
unchanged and the OUT output is energized according to the comparison between ACTUAL
(ACT) and TARGET (TARG).
An optional time base (minimum of 0.1 second) can be entered in the R1 field of the algorithm
record. If a value is not entered into BASE (R1), the default time base is assumed to be 1 second.
Functional Symbol

REF_1100

317

5.72 ONESHOT
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init

BASE

R1-Real

IN1

Required

98

Tuning Diagram
number

Tuning
Constant

Optional

1.0

Time Base in
seconds (minimum
0.1 second, default
1.0 seconds);
(0 implies 1.0
second)

Variable

Required

Input (digital signal)

LD, LP

* TARG

R2-Real

Selectable

Required

1.0

Pulse Time number


(analog signal)

LA

* ACT

R3-Real

Selectable

Required

0.0

Output (analog
signal)

LA

Variable

Required

Output (digital
signal)

LD, LP

OUT

MIN.
POINT
RECORD

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

Function (Timing Diagram)

(IN1)

TARGET

318

TARGET

TARGET

REF_1100

5.73 OR

5.73 OR
Description
The OR (Logical OR gate up to 8 inputs) algorithm changes the Boolean of the output based on
the input.The output equals the logical OR of two to eight inputs (that is, at least one input must
be TRUE for the output to be TRUE).
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (digital)

LD, LP

IN2

Variable

Optional

Input (digital)

LD, LP

IN3

Variable

Optional

Input (digital)

LD, LP

IN4

Variable

Optional

Input (digital)

LD, LP

IN5

Variable

Optional

Input (digital)

LD, LP

IN6

Variable

Optional

Input (digital)

LD, LP

IN7

Variable

Optional

Input (digital)

LD, LP

IN8

Variable

Optional

Input (digital)

LD, LP

OUT

Variable

Required/

Output (digital)

LD, LP

Optional

Note: Output is required if connecting to anything other than OR or AND.


Function
OUT = IN1 OR IN2 OR IN3 OR IN4 OR IN5 OR IN6 OR IN7 OR IN8

REF_1100

319

5.74 PACK16

5.74 PACK16
Description
The PACK16 algorithm specifies up to 16 optional digital values as inputs, which are placed into
their corresponding positions in the A2 record field of an LP or larger point record. Inputs may be
of any size (that is, LD, or DD). Variable PBPT functions as an output LP point record, which is
broadcast on the Data Highway for use by other drops. PBPT also functions as an input, when
desired, to pack the LP record from multiple algorithms. These other algorithms can be additional
PACK16 algorithms or other types. For example, you could pack Bits 0 through 10 from Algorithm
X, Bits 11 through 15 from algorithm Y. Bit locations can be left unpacked as spares, if desired.
Note: If digital inputs have bad quality, then the packed point (PBPT) bit remains unchanged.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

320

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

D0

Variable

Optional

Input (digital) for Bit 0

LD

D1

Variable

Optional

Input (digital) for Bit 1

LD

D2

Variable

Optional

Input (digital) for Bit 2

LD

D3

Variable

Optional

Input (digital) for Bit 3

LD

D4

Variable

Optional

Input (digital) for Bit 4

LD

REF_1100

5.74 PACK16

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

D5

Variable

Optional

Input (digital) for Bit 5

LD

D6

Variable

Optional

Input (digital) for Bit 6

LD

D7

Variable

Optional

Input (digital) for Bit 7

LD

D8

Variable

Optional

Input (digital) for Bit 8

LD

D9

Variable

Optional

Input (digital) for Bit 9

LD

D10

Variable

Optional

Input.(digital) for Bit 10

LD

D11

Variable

Optional

Input (digital) for Bit 11

LD

D12

Variable

Optional

Input (digital) for Bit 12

LD

D13

Variable

Optional

Input (digital) for Bit 13

LD

D14

Variable

Optional

Input (digital) for Bit 14

LD

D15

Variable

Optional

Input (digital) for Bit 15

LD

PBPT
(POUT)

Variable

Required

Output (packed point)

LP

REF_1100

321

5.75 PID

5.75 PID
Description
The PID algorithm provides a proportional, integral, derivative controller function. The algorithm is
a parallel PID implementation that utilizes integral tracking signals for bumpless transfer. The
output value is limited via user-defined limits and anti-reset windup is handled internally.
Functional Symbol

Guidelines
Note: PV = Process Variable
STPT = Set Point
1. PV GAIN and PV BIAS must be used to normalize the process variable inputs to a 0 to 100
percent value.
(PV x PV GAIN) + PV BIAS = PV percent. Thus:

2. STPT GAIN and STPT BIAS must be used to normalize the set point to a 0 to 100 percent
value. If setpoint input units are not 0 to 100 percent, then:
(STPT x STPT GAIN) + STPT BIAS = set point percent. Thus:

3. Determine set point high and low limits with these equations:
set point high limit = (100 - STPT BIAS)/STPT GAIN
set point low limit = (0 - STPT BIAS)/STPT GAIN

322

REF_1100

5.75 PID
Auto-scaling options
The Auto-scaling option consists of a configuration parameter (AUSC) and Engineering Units
limits parameters (high and low limits) for PV and STPT inputs of the PID algorithm.
Possible settings for the AUSC parameter are:

NONE

PV_ONLY

SP_ONLY

BOTH

If the setting NONE is used:


Auto-scaling is disabled. The PID uses the gain and bias values that are configured by the user
for each input (R1, R2 for PV and R3, R4 for SP).

If the setting PV_ONLY is used:


Auto-scaling is enabled for the process variable only. The STPT input (setpoint) uses the gain and
bias values configured by the user. For the PV gain and bias values, the top and bottom
engineering units range are read depending on the Auto-Scaling parameter option. The
appropriate gain and bias values are calculated so that the PV auto-scale high and low limits are
scaled to 0%-100%, according to the formulas:

The calculated gain and bias values are then written to the R1 and R2 LC record fields by the
algorithm. These changes will be reconcilable from the database in the same manner as if it were
tuned.

If the setting SP_ONLY is used:


Auto-scaling is enabled for the Set Point only. The PV (Process Variable) input uses the gain and
bias values configured by the user. For the SP gain and bias values, the top and bottom
engineering units range are read depending on the Auto-Scaling parameter option. The
appropriate gain and bias values are calculated so that the SP auto-scale high and low limits are
scaled to 0%-100%, according to the formulas:

REF_1100

323

5.75 PID
The calculated gain and bias values are then written to the R3 and R4 LC record fields by the
algorithm. These changes will be reconcilable from the database in the same manner as if it were
tuned.

If the setting BOTH is used:


Auto-scaling is enabled for both the PV and SP. The PV auto-ranging is handled as outlined in
PV_ONLY and the SP auto-scaling is handled as outlined in SP_ONLY.
Auto-scaling parameter options
The Auto-scaling parameter option consists of the configuration parameter (AUSCP). This
parameter allows the user to configure what scaling parameters to use.
Possible settings for the AUSCP parameter are:

INT INTERNAL. If auto-scaling is enabled, use internal user-defined scaling (V1 V4).

EXT EXTERNAL. If auto-scaling is enabled, use PV input TW (top scale) and BW (bottom
scale) to calculate gain and bias. This is dependent on the AUSC option.

Error conditions: Auto-scale range values are invalid


This case applies to any configuration of auto-scaling. The auto-scaling range values are
considered invalid if any one of the following occurs:

Bottom and Top Scale values are equal.

Bottom Scale value > Top Scale value.

In the case where the range values are invalid for a particular input, the output will not change
and will be marked as BAD quality. Also, the PID will post an Invalid Calculated Number message
in the Error Log and will place the drop in alarm.
Output Calculation
The output (which is in either engineering units or percent and limited by the high and low limits
specified) equals the result of the PID equation except:

324

When the algorithm is told to track, the output equals the track input when the tracking signal
is present. The output ramps at the user-specified track rate, from the track input back to the
controlled value when the tracking signal is removed.

When a raise inhibit or lower inhibit signal is present, it may prevent the PID controller from
controlling.

If the algorithm calculates an invalid real number for the output, the quality of the output is set
to BAD. Consequently, if an invalid value is entered as an input to the algorithm, or if the
algorithm generates an invalid value for the output, the drop is placed into alarm. In all cases,
the output is set to the last GOOD value.

If the algorithm generates an invalid track output value, the set point input value is used as
the track output, unless it is invalid. The track output value is not updated if both the
calculated track output and the set point input values are invalid.

REF_1100

5.75 PID

Error Deadband and Deadband Gain


The algorithm can be configured to utilize a Deadband region in the Controller error signal. This
Deadband region is used to modify the error signal that is presented to the PID equation.
The Controller error signal is calculated as the difference between the normalized process
variable and normalized set point and is passed as the input to the PID equation. If the algorithm
is configured to utilize an error Deadband and the error is within the deadband limits, the error
that is presented to the PID equation is Error = Error X Error Deadband Gain.
When the algorithm is configured to use deadband, transitions into and out of the deadband
region are smoothed internally by utilizing a hold and track operation. During this transition cycle,
the Controller output is set to its previous value and the integral term is re-calculated to account
for the apparent proporational gain change in the new region. This effectively eliminates the
abrupt change in the proportional term due to the deadband transition. Derivative action is
disabled when the algorithm is operating within the deadband region.
If no deadband action is desired, the inner deadband limit (DBND) should be set to zero.
Single Deadband
The Single Deadband mode is configured by initializing the inner deadband limit (DBND field) to a
non-zero value and setting the deadbands option (DOPT) parameter to SINGLE. This value
represents the normalized Controller error signal to be used as the Deadband region limits.
Deadband is symetrical with respect to zero. For example, if the DBND field equals 5, then the
deadband region is between -5% and +5%. If the Controller error signal is within the deadband,
then the actual error that is presented to the PID equation is the product of the error signal and
the error deadband gain. The ERRD field contains the value of the error deadband gain. The valid
values for this field are any real numbers between zero and one [0 - 1].
As an example, consider the following: DBND is 5 and ERRD is 0.5. For a normalized Controller
error signal of 2%, the actual error signal that is applied to the PID equation is 2% x 0.5 = 1%. In
general, for these example values of DBND and ERRD, any normalized error signal between -5%
and +5% is reduced by 50% before being applied to the PID equation. Derivative action is
disabled when the algorithm is operating within the deadband region.
Double Deadband
The Double Deadband configuration utilizes two deadband limits. These are the inner (DBND)
and the outer deadband limit (ODBND). Once the absolute value of the error signal is less than or
equal to the inner deadband, then the deadband gain is applied. The deadband gain is applied
until the absolute value of the error signal is greater than the outer deadband.
The Double Deadband mode is configured by initializing the Outer Deadband (ODBND) field to a
value greater than the inner deadband limit (DBND) and setting the deadbands option (DOPT)
parameter to DOUBLE. The Double Deadband mode is designed to be used when a noisy
process variable is present. When noise is present in the Process Variable signal, it causes
fluctuations in the magnitude of the error signal. When a Single Deadband is used, the Controller
error signal can fluctuate in and out of the deadband region (DBND) on successive execution
loops. In severe cases, this can lead to reduced performance of the PID algorithm. An example of
this situation is shown graphically in the following figure.

REF_1100

325

5.75 PID
In this figure, at time t1, the signal has entered the inner deadband region. At time t2, the noise
has caused the signal to exit the inner deadband region, and at t3, it enters it again. The same
problem is seen again as the signal leaves the inner deadband region, as seen at t4, t5 and t6.
At each transition into and out of the deadband, the algorithm performs a track and hold
operation. This prevents the output from spiking due to the abrupt change in the proportional
term.
In Singe Deadband mode, subsequent transitions into and out of the deadband region can lead to
reduced performance of the PID algorithm.

326

REF_1100

5.75 PID
To prevent this situation, a second outer deadband region (ODBND) can be defined by the user.
This should be larger than the inner deadband region (DBND) as shown in the following figure.
More specifically, the outer deadband (ODBND) should be defined as equal to, or larger than, the
noise seen in the signal PLUS the inner deadband region (DBND).
For example, if the DBND field is equal to 5, then that deadband region is between -5% and +5%.
Once the Controller error signal reaches this inner deadband region of + or -5%, a noise in the
signal with a peak of + or -3% could push the Controller error signal back out of the inner
deadband region up to + or -8% on the next scan. Therefore, the outer deadband (ODBND)
should be set larger than + or -8% to compensate for noise. In the following figue, we set the
ODBND to +/- 10. If the outer deadband (ODBND) region is less than the defined inner deadband
(DBND) region, then the outer deadband region is set equal to the inner deadband value.

REF_1100

327

5.75 PID
Hard Inhibit Parameter
If the Hard Inhibit parameter (INHB) of PID is set to ENABLED, and PID receives an inhibit signal
from downstream, PID stops updating the PID output and holds the last calculated value prior to
the receipt of the inhibit signal. As long as the inhibit condition remains, normal control action will
resume only after the PID error changes sign.
If the Hard Inhibit parameter (INHB) is set to DISABLED, and PID receives the inhibit signal from
downstream, PID continues calculating a new output value each loop time. PID compares the
new value to the previous output value and if updating the output point with the new value would
violate the inhibit condition, then the previous output value is maintained. If the new value would
not violate the inhibit condition, then the output point is updated with the new output value.
Example
If INHB is set to ENABLED when PID receives a lower inhibit signal (LWI) via track input from a
downstream algorithm, PID output cannot decrease. The output value remains constant until
either the LWI signal is removed, or the process error changes to where PID output increases and
resumes normal control action.
If INHB is set to DISABLED when PID receives a lower inhibit signal (LWI) via track input from a
downstream algorithm, PID continues to calculate a PID output each loop time. The calculated
value is stored in the algorithm and compared to the output calculated during the previous loop
time. If a lower inhibit occcurs, the actual PID output will be the greater of the two calculated
values. If a raise inhibit occurs, the actual PID output will be the lesser of the two calculated
values.
Note: In either case, PID uses internal mechanisms to ensure that an integral windup condition
does not occur during an inhibited situation.
Tracking Signals
External tracking and limiting are done through signals passed in the upper 16 bits of the third
status word of the analog track points. This algorithm takes the following action in response to
information found in the third status word of the analog input signal TRIN:
BIT

328

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through or set TRUE


when not in Cascade mode.

17

Track if lower

Implemented

Not used

18

Track if higher

Implemented

Not used

19

Lower inhibit

Implemented*

Passed through**

20

Raise inhibit

Implemented*

Passed through**

21

Conditional Track

See description of cascaded


mode.

Passed through if in the


cascaded mode.

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Manual mode

REF_1100

5.75 PID

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

26

Auto mode

No action

Auto mode

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definitions given in
Setting Tracking Signals (see page 16).

The High and Low limit flags, the mode, and the tracking signals from the algorithm are output to
TOUT to be used for display and by upstream algorithms.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init

Required

SPTG

R3-Real

Tuning
Constant

SPTB

R4-Real

PVG

DESCRIPTION

MIN.
POINT
RECORD

38

Tuning Diagram
Number

Required

1.0

Gain on set point. The


gain on the set point
should never be
initialized to zero.

Tuning
Constant

Optional

0.0

Bias on set point

R1-Real

Tuning
Constant

Required

1.0

Gain on process
variable input. The gain
on the set point should
never be initialized to
zero.

PVB

R2-Real

Tuning
Constant

Optional

0.0

Bias on process variable


input

TPSC

R5-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

BTSC

R6-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point

PVTS

V1-Real

Tuning
Constant

Required

100.0

Top scale for PV input


point -- used only when
AUSC is set to
PV_ONLY or BOTH.

PVBS

V2-Real

Tuning
Constant

Required

0.0

Bottom scale for PV


input point -- used only
when AUSC is set to
PV_ONLY or BOTH.

REF_1100

DEFAULT
VALUE

329

5.75 PID

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

SPTS

V3-Real

Tuning
Constant

Required

100.0

Top scale for STPT


input point -- used only
when AUSC is set to
SP_ONLY or BOTH.

SPBS

V4-Real

Tuning
Constant

Required

0.0

Bottom scale for STPT


input point -- used only
when AUSC is set to
SP_ONLY or BOTH.

AUSC

X7-Byte
Bits 0 and 1

Data Init.

Required

Auto-scaling option:

NONE

DESCRIPTION

MIN.
POINT
RECORD

NONE - No auto-scaling
enabled. GAINs and
BIASes defined in
R1-R4 fields will be
used.
PV_ONLY - Only GAIN
and BIAS for PV (R1
and RS) are
automatically calculated,
using TOP (V1) and
BOTTOM (V2) scale
parameters for PV.
SP_ONLY - GAIN and
BIAS for SP only (R3
and R4) are
automatically calculated,
using TOP (V1) and
BOTTOM (V2) scale
parameters for PV.
BOTH - GAIN and BIAS
for both PV and SP
inputs are automatically
recalculated, using
appropriate TOP and
BOTTOM scale
parameters for PV (V1
and V2) and for SP (V3
and V4).

AUSCP

X8-Byte
Bit 0

Data Init.

Required

INT

Auto-scaling parameters
option:

INT - If auto-scaling is
enabled, use
user-defined internal
scaling (V1 - V4)
EXT - If auto-scaling is
enabled, use PV input
TW (top scale) and BW
(bottom scale) to
calculate gain and bias.

330

REF_1100

5.75 PID

N AM E

TYPE

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

X5-Byte
Bits 1 and 0

Data Init.

Required

NORMAL

Type of PID controller:

MIN.
POINT
RECORD
-

NORMAL = Regular
PID control
ESG = PID control with
error squared on the
proportional gain term
ESI = PID control with
error squared on the
integral term

ACTN

X5-Byte

Data Init.

Required

INDIRECT

Direction Flag:

INDIRECT = Error = Set


point - process variable

Bit 2

DIRECT: Error =
Process variable - set
point
INHB

X6-Byte

Data Init.

Required

ENABLED

Bit 0

Defines algorithm
behavior when a raise
or lower inhibit signal is
received from a
downstream algorithm.

ENABLED = Normal
PID action. Output is not
updated and last value
is held until PID error
changes sign.
DISABLED = See
description of Hard
Inhibit Parameter.
CASC

X5-Byte
Bit 3

Data Init

Required

NORMAL

Controller is
downstream in a
cascaded configuration.

NORMAL = Normal PID


action.
CASCADED = See
description of Cascaded
Mode and Conditional
Tracking.

REF_1100

331

5.75 PID

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DACT

X5-Byte
Bit 4

Data Init

Required

NORMAL

Type of Derivative
action:

MIN.
POINT
RECORD
-

NORMAL = Derivative
applied to change in
error.
SET POINT = Derivative
applied to change in set
point.
PROCESS = Derivative
applied to change in
process variable.
DBND

S3-Real

Tuning
Constant

Required

0.0

DOPT

X5-Byte Bit
6 and 7

Data Init.

Required

SINGLE

PID error deadband*

SINGLE - Single
deadband mode

DOUBLE - Double
deadband mode

332

ODBND

S7-Real

Tuning
Constant

Required

0.0

PID outer error


deadband**

LA

ERRD

S4-Real

Tuning
Constant

Required

0.0

PID error deadband


gain

*** PGAIN

R8-Real

Selectable

Required

1.0

PID proportional gain. If


the proportional gain
equals zero, the
proportional part is not
included in the output.

LA

*** INTG

R9-Real

Selectable

Required

10.0

PID integral time in


seconds per repeat. If
the integral time equals
zero, the integral part is
not included in the
output.

LA

*** DGAIN

S1-Real

Selectable

Required

0.0

PID derivative gain. If


the derivative gain
equals zero, the
derivative part is not
included in the output.

LA

*** DRAT

S2-Real

Selectable

Required

0.0

PID derivative rate


decay constant in
seconds

LA

TRAT

R7-Real

Tuning
Constant

Required

2.5

Track ramp rate (units


per second)

PV

Variable

Required

Process variable analog


input.

LA

STPT

Variable

Required

Set point analog input

LA

TOUT

Variable

Required

Track output value.

LA

REF_1100

5.75 PID

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OUT

Variable

Required

Analog output variable

LA

TRIN

Variable

Optional

Tracking analog input


variable

LA

DVAL

Variable

Optional

Derivative term output

LA

DEVA

Variable

Optional

Error between process


variable and set point
for PID. This is
calculated using the
normalized set point
PVAR.

LA

* A value of 0.0 for this field disables all deadband action.


** Anytime that the value of this field is greater than the inner deadband (DBND), the double deadband action
results. This value should be set to zero if single deadband action is desired.
*** When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.
For selectable parameters, the record field associated with the parameter will reflect the value of what is
currently selected.

REF_1100

333

5.75 PID

334

REF_1100

5.75 PID

Cascaded Mode and Conditional Tracking:

Conditional tracking is a scheme which allows tighter control of the process variable when the
control strategy is implemented using cascaded Controllers. Essentially, the conditional tracking
scheme allows the upstream Controller to have immediate influence on the final output when the
error between the process variable and the set point changes direction while the downstream
Controller is in a saturation condition. Conditional tracking is incorporated when the downstream
Controller (Controller B in figure) operates in cascaded mode.
The purpose of cascaded mode is to allow two PID algorithms to be used in a cascaded
configuration where the output of one PID is the set point for another. When you desire to arrange
two PID Controllers in this configuration, the type parameter should be set to cascaded in the
downstream Controller only. It is not necessary to configure the upstream Controller in the
cascaded configuration.
When the downstream Controller is configured in the cascaded mode, the Controller operates as
a conventional PID controller so long as the Controller is not in a saturation condition. However, if
the Controller output is saturated at the HI or LO limit or if the Controller receives an inhibit signal
from a downstream algorithm the behavior of the cascaded pair is as follows:
The downstream Controller (Controller B in figure) asserts the conditional track signal in its
output tracking point along the applicable limit or inhibit bit. The downstream Controller also
calculates a track output value that if applied as a set point input, yields a Controller error of
zero (see Equation 1 in the previous figure).
When the upstream Controller sees the conditional track bit set, it adjusts its output as
follows: If the error signal causes the Controller output to move against the inhibit signal (for
example, output attempts to increase when the algorithm is receiving a raise inhibit), then the
algorithm sets its output equal to the track input received from downstream.
If the error signal causes the output to move away from the inhibit signal, the algorithm sets
its output equal to the track input and begin controlling.
Without this mode, the upstream Controller would first have to move enough to zero the error
on the downstream Controller before having any effect on the process. This would introduce
additional dead-time in the Controller response and in the case of processes with slow
dynamics (for example, temperature control), this additional dead-time may be significant.

REF_1100

335

5.75 PID
Only the PID algorithm configured to be in cascaded mode asserts the conditional track bit.
The upstream Controller (Controller A in the previous figure) does not pass the conditional
track bit in its track output.
Hard Inhibit Parameter
If the Hard Inhibit parameter (INHB) of the PID algorithm is set to ENABLED, and PID receives an
inhibit signal from downstream, the PID algorithm stops updating the PID output and holds the
last calculated value prior to the receipt of the inhibit signal. As long as the inhibit condition
remains, normal control action will resume only after the PID error changes sign.
If the Hard Inhibit parameter (INHB) is set to DISABLED, and the PID algorithm receives the
inhibit signal from downstream, PID continues calculating a new output value each loop time. PID
compares the new value to the previous output value and if updating the output point with the new
value would violate the inhibit condition, then the previous output value is maintained. If the new
value would not violate the inhibit condition, then the output point is updated with the new output
value.
Example
If INHB is set to ENABLED when PID receives a lower inhibit signal (LWI) via track input from a
downstream algorithm, the PID algorithm output cannot decrease. The output value remains
constant until either the LWI signal is removed, or the process error changes to where PID output
increases and resumes normal control action.
If INHB is set to DISABLED when PID receives a lower inhibit signal (LWI) via track input from a
downstream algorithm, the PID algorithm continues to calculate a PID output each loop time. The
calculated value is stored in the algorithm and compared to the output calculated during the
previous loop time. If a lower inhibit occcurs, the actual PID output will be the greater of the two
calculated values. If a raise inhibit occurs, the actual PID output will be the lesser of the two
calculated values.
Note: In either case, PID uses internal mechanisms to ensure that an integral windup condition
does not occur during an inhibited situation.

336

REF_1100

5.76 PIDFF

5.76 PIDFF
Description
The PIDFF algorithm is designed to accept an externally generated analog signal that is used as
a feed-forward bias. This analog signal is summed with the actual PID output (sum of the
proportional, integral and derivative terms) to become the final control output. The advantage to
having the feed-forward input incorporated in the PID algorithm is that saturation conditions,
caused by either the final control output exceeding the algorithms limits or raise/lower inhibit
signals generated by the downstream algorithms, are handled internally to the algorithm. This can
greatly improve Controller response times to sudden changes in the direction (algebraic sign) of
the Controller error signal when the Controller is in a saturation condition.
The PID portion of the algorithm provides a proportional, integral, derivative Controller function.
The algorithm is a parallel PID implementation that utilizes integral tracking signals for bumpless
transfer. The output value is limited via user-defined limits and anti-reset windup is handled
internally.
Functional Symbol

Guidelines
Note: PV = Process Variable
STPT = Set Point
FF = FF Input
1. PV GAIN and PV BIAS must be used to normalize the process variable inputs to a 0 to 100
percent value. Use this equation:
(PV x PV GAIN) + PV BIAS = PV percent. Thus,

REF_1100

337

5.76 PIDFF
2. STPT GAIN and STPT BIAS must be used to normalize the set point to a 0 to 100 percent
value. If setpoint input units are not 0 to 100 percent, then:
(STPT x STPT GAIN) + STPT BIAS = set point percent. Thus:

3. The external feed-forward input should be normalized to 0-100%


(FF x FF GAIN) + FF BIAS = FF percent

338

REF_1100

5.76 PIDFF
Error Deadband and Deadband Gain
The algorithm can be configured to utilize a Deadband region in the Controller error signal. This
Deadband region is used to modify the error signal that is presented to the PID equation.
The Controller error signal is calculated as the difference between the normalized process
variable and normalized set point and is passed as the input to the PID equation. If the algorithm
is configured to utilize an error Deadband and the error is within the deadband limits, the error
that is presented to the PID equation is Error = Error X Error Deadband Gain.
When the algorithm is configured to use deadband, transitions into and out of the deadband
region are smoothed internally by utilizing a hold and track operation. During this transition cycle,
the Controller output is set to its previous value and the integral term is re-calculated to account
for the apparent proporational gain change in the new region. This effectively eliminates the
abrupt change in the proportional term due to the deadband transition. Derivative action is
disabled when the algorithm is operating within the deadband region.
If no deadband action is desired, the inner deadband limit (DBND) should be set to zero.
Single Deadband
The Single Deadband mode is configured by initializing the inner deadband limit (DBND field) to a
non-zero value and setting the deadbands option (DOPT) parameter to SINGLE. This value
represents the normalized Controller error signal to be used as the Deadband region limits.
Deadband is symetrical with respect to zero. For example, if the DBND field equals 5, then the
deadband region is between -5% and +5%. If the Controller error signal is within the deadband,
then the actual error that is presented to the PID equation is the product of the error signal and
the error deadband gain. The ERRD field contains the value of the error deadband gain. The valid
values for this field are any real numbers between zero and one [0 - 1].
As an example, consider the following: DBND is 5 and ERRD is 0.5. For a normalized Controller
error signal of 2%, the actual error signal that is applied to the PID equation is 2% x 0.5 = 1%. In
general, for these example values of DBND and ERRD, any normalized error signal between -5%
and +5% is reduced by 50% before being applied to the PID equation. Derivative action is
disabled when the algorithm is operating within the deadband region.
Double Deadband
The Double Deadband configuration utilizes two deadband limits. These are the inner (DBND)
and the outer deadband limit (ODBND). Once the absolute value of the error signal is less than or
equal to the inner deadband, then the deadband gain is applied. The deadband gain is applied
until the absolute value of the error signal is greater than the outer deadband.
The Double Deadband mode is configured by initializing the Outer Deadband (ODBND) field to a
value greater than the inner deadband limit (DBND) and setting the deadbands option (DOPT)
parameter to DOUBLE. The Double Deadband mode is designed to be used when a noisy
process variable is present. When noise is present in the Process Variable signal, it causes
fluctuations in the magnitude of the error signal. When a Single Deadband is used, the Controller
error signal can fluctuate in and out of the deadband region (DBND) on successive execution
loops. In severe cases, this can lead to reduced performance of the PID algorithm. An example of
this situation is shown graphically in the following figure.

REF_1100

339

5.76 PIDFF
In the following figue, at time t1, the signal has entered the inner deadband region. At time t2, the
noise has caused the signal to exit the inner deadband region, and at t3, it enters it again. The
same problem is seen again as the signal leaves the inner deadband region, as seen at t4, t5 and
t6.
At each transition into and out of the deadband, the algorithm performs a track and hold
operation. This prevents the output from spiking due to the abrupt change in the proportional
term.
In Singe Deadband mode, subsequent transitions into and out of the deadband region can lead to
reduced performance of the PID algorithm.

340

REF_1100

5.76 PIDFF
To prevent this situation, a second outer deadband region (ODBND) can be defined by the user.
This should be larger than the inner deadband region (DBND) (see the following figure). More
specifically, the outer deadband (ODBND) should be defined as equal to, or larger than, the noise
seen in the signal PLUS the inner deadband region (DBND).
For example, if the DBND field is equal to 5, then that deadband region is between -5% and +5%.
Once the Controller error signal reaches this inner deadband region of + or -5%, a noise in the
signal with a peak of + or -3% could push the Controller error signal back out of the inner
deadband region up to + or -8% on the next scan. Therefore, the outer deadband (ODBND)
should be set larger than + or -8% to compensate for noise. In the following figure, we set the
ODBND to +/- 10. If the outer deadband (ODBND) region is less than the defined inner deadband
(DBND) region, then the outer deadband region is set equal to the inner deadband value.

REF_1100

341

5.76 PIDFF
Output Calculation
The output (which is in either engineering units or percent and limited by the high and low limits
specified) equals the algebraic sum of the result of the PID equation and the feed-forward input
except:

When the algorithm is told to track, the output equals the track input when the tracking signal
is present. The output ramps at the user-specified track rate, from the track input back to the
controlled value when the tracking signal is removed.

When a raise inhibit or lower inhibit signal is present, it may prevent the PID Controller from
controlling.

When the sum of the actual PID output and the normalized feed-forward input exceeds either
the high or low limit of the algorithm, the output in this case is clipped at the corresponding
limit.

If the algorithm calculates an invalid real number for the output, the quality of the output is set
to BAD. Consequently, if an invalid value is entered as an input to the algorithm, or if the
algorithm generates an invalid value for the output, the drop is placed into alarm. In all cases,
the output is set to the last GOOD value.

If the algorithm generates an invalid track output value, the set point input value is used as
the track output, unless it is invalid. The track output value is not updated if both the
calculated track output and the set point input values are invalid.

Tracking Signals
External tracking and limiting are done through signals passed in the upper 16 bits of the third
status word of the analog track points. This algorithm takes the following action in response to
information found in the third status word of the analog input signal TRIN:
BIT

342

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through or set TRUE when


not in Cascade mode.

17

Track if lower

Implemented when not in


Manual mode*

Not used

18

Track if higher

Implemented when not in


Manual mode*

Not used

19

Lower inhibit

Implemented*

Passed through**

20

Raise inhibit

Implemented*

Passed through**

21

Conditional Track

See description of
cascaded mode.

Passed through if in the cascaded


mode.

22

Not used

No action

Not used

23

Deviation Alarm

No action

Set when the deviation of process


variable and set point is greater
than the given Deviation Alarm
deadband.

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Manual mode

26

Auto mode

No action

Auto mode

REF_1100

5.76 PIDFF

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definitions given in
Setting Tracking Signals (see page 16).

The High and Low limit flags, the mode, and the tracking signals from the algorithm are output to
TOUT to be used for display and by upstream algorithms.
Algorithm Record Type = LC
Algorithm Definitions

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init

Required

DOPT

X5-Bit 6

Data Init

Required

DEFAULT
VALUE
24
Single

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram
Number

Deadband options:

Single
Double
CDLY

B7-Real

Nontunable

Required

Cascade Delay Time in


Seconds

SPTG

R3-Real

Tuning
Constant

Required

1.0

Gain on set point. The


gain on the set point
should never be
initialized to zero.

SPTB

R4-Real

Tuning
Constant

Optional

0.0

Bias on set point

PVG

R1-Real

Tuning
Constant

Required

1.0

Gain on process
variable input. The gain
on the set point should
never be initialized to
zero.

PVB

R2-Real

Tuning
Constant

Optional

0.0

Bias on process
variable input

S5-Real

Tuning
Constant

Required

1.0

Gain on Feedforward.
The gain on
feedforward should
never be initialized to
zero.

FFG

REF_1100

343

5.76 PIDFF

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

FFB

S6-Real

Tuning
Constant

Optional

DACT

X5-Byte
Bit 4

Data Init

Required

DEFAULT
VALUE
0.0
Normal

DESCRIPTION

MIN.
POINT
RECORD

Bias on Feedforward
input

Type of Derivative
action:

Normal - Derivative
applied to change in
error.
Set point - Derivative
applied to change in
set point.
Process - Derivative
applied to change in
process variable.
TPSC

R5-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

BTSC

R6-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point

X5-Byte
Bits 0 and
1

Data Init.

Required

Type of PID controller:

TYPE

NORMAL

NORMAL= Regular
PID control
ESG = PID control with
error squared on the
proportional gain term
ESI = PID control with
error squared on the
integral term

ACTN

X5-Byte
Bit 2

Data Init.

Required

INDIRECT

Direction Flag:

INDIRECT = Error =
Set point - process
variable
DIRECT = Error =
Process variable - set
point

CASC

X5-Byte
Bit 3

Data Init

Required

NORMAL

Controller is
downstream in a
cascaded
configuration.

NORMAL = Normal
PID action.
CASCADED = See
description of
cascaded mode and
conditional tracking.

344

REF_1100

5.76 PIDFF

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DBND

S3-Real

Tuning
Constant

Required

0.0

DOPT

X5-Byte
Bit 6 and 7

Data Init.

Required

SINGLE

DESCRIPTION

MIN.
POINT
RECORD

PID error inner


deadband *

SINGLE - Single
deadband mode

DOUBLE - Double
deadband mode
ODBND

S7-Real

Tuning
Constant

Required

0.0

PID error outer


deadband **

LA

ERRD

S4-Real

Tuning
Constant

Required

0.0

PID error deadband


gain

*** PGAIN

R8-Real

Selectable

Required

1.0

PID proportional gain.


If the proportional gain
equals zero, the
proportional part is not
included in the output.

*** INTG

R9-Real

Selectable

Required

10.0

PID integral time in


seconds per repeat. If
the integral time equals
zero, the integral part
is not included in the
output.

*** DGAIN

S1-Real

Selectable

Required

0.0

PID derivative gain. If


the derivative gain
equals zero, the
derivative part is not
included in the output.

*** DRAT

S2-Real

Selectable

Required

0.5

PID derivative rate


decay constant in
seconds

TRAT

R7-Real

Tuning
Constant

Required

2.5

Track ramp rate (units


per second)

PV

Variable

Required

Process variable
analog input.

LA

FF

Variable

Required

Feedforward Input

LA

STPT

Variable

Required

Set point.

LA

TOUT

Variable

Required

Track output value

LA

OUT

Variable

Required

Analog output variable

LA

DVAL

Variable

Optional

Derivative term output

LA

TRIN

Variable

Optional

Tracking analog input


variable

LA

* A value of 0.0 for this field disables all deadband action.

REF_1100

345

5.76 PIDFF

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

** Anytime that the value of this field is greater than the inner deadband (DBND), the double
deadband action results. This value should be set to zero if single deadband action is desired.
*** When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

346

REF_1100

5.76 PIDFF

REF_1100

347

5.76 PIDFF
Feed-Forward Control Example
Refer to the Functional Operation of PIDFF diagram for the following example. Consider the
case where the output limits on the PIDFF algorithm are 0-100%, the external feed-forward input
has a normalized value of 75%, the actual PID output is 50% and the error between process
variable and set point causes the PID output to increase. This condition would require that the
final output be 125%, which violates the algorithm's high limit of 100%. The final PIDFF output is
clipped at 100%. If the error between the process variable and the set point were to change
direction, the PID output would have to move 25% before it had any effect on the final control
output and thus the process variable. Depending on the tuning parameters, the time that this
takes can be significant.
By incorporating the feed-forward input into the PIDFF algorithm, this direction change in the error
between the process variable and set point has an immediate effect on the final control output.
The PIDFF begins integrating from the high limit of 100% and thus has immediate influence on
the final control output and subsequently on the process variable.
Cascaded Mode and Conditional Tracking

348

REF_1100

5.76 PIDFF
Conditional tracking is a scheme which allows tighter control of the process variable when the
control strategy is implemented using cascaded Controllers. Essentially, the conditional tracking
scheme allows the upstream Controller to have immediate influence on the final output when the
error between the process variable and the setpoint changes direction while the downstream
controller is in a saturation condition. Conditional tracking is incorporated when the downstream
Controller (Controller B in previous figure) operates in cascaded mode.
The purpose of cascaded mode is to allow two PID algorithms to be used in a cascaded
configuration where the output of one PID is the set point for another. When you desire to arrange
two PID Controllers in this configuration, the type parameter should be set to cascaded in the
downstream Controller only. It is not necessary to configure the upstream Controller in the
cascaded configuration.
When the downstream controller is configured in the cascaded mode, the Controller operates as a
conventional PIDFF Controller so long as the Controller is not in a saturation condition. However,
if the controller output is saturated at the HI or LO limit or if the Controller receives an inhibit
signal from a downstream algorithm, the behavior of the cascaded pair is as follows:
The downstream Controller (Controller B in the previous figure) asserts the conditional track
signal in its output tracking point along the applicable limit or inhibit bit. The downstream
Controller also calculates a track output value that if applied as a set point input, yields a
Controller error of zero (see the previous Equation 1).
When the upstream Controller sees the conditional track bit set it adjusts its output as follows:
If the error signal causes the Controller output to move against the inhibit signal (for example,
output attempts to increase when the algorithm is receiving a raise inhibit), then the algorithm
sets its output equal to the track input received from downstream.
If the error signal causes the output to move away from the inhibit signal, the algorithm sets
its output equal to the track input and begin controlling.
Without this mode, the upstream Controller would first have to move enough to zero the error
on the downstream Controller before having any effect on the process. This would introduce
additional dead-time in the Controller response and in the case of processes with slow
dynamics (for example, temperature control) this additional deadtime may be significant.
Only the PIDFF algorithm configured to be in cascaded mode asserts the conditional track bit.
The upstream Controller (Controller A in previous figure) does not pass the conditional track
bit in its track output.

REF_1100

349

5.77 PNTSTATUS

5.77 PNTSTATUS
Description
The PNTSTATUS algorithm outputs the states of two specified bits of the point record's status
word. When the ENBL input is TRUE, the states of BITA and BITB of the point record's status
word are output to OUTA and OUTB, respectively. For example, if the bit specified by BITA is a
one, then OUTA is TRUE. Conversely, if the bit specified by BITA is a zero, then OUTA is FALSE.
This example also holds TRUE for BITB and OUTB.
For analog and digital records, the valid range for BITA and BITB is 0 through 31.
When the ENBL input is TRUE and either the BITA or BITB operand contains an invalid bit
number, no operation occurs and the BITA and BITB outputs are FALSE.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

350

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

STAT

X1-Byte

BITA

BITB

MIN.
POINT
RECORD

Required

86

Tuning Diagram
number

Data Init.

Required

1W

Status word 1W, 2W,


3W

X2-Byte

Data Init.

Optional

Which bit in the point


record's status word is
output to OUTA

X3-Byte

Data Init.

Optional

Which bit in the point


record's status word is
output to OUTB

ENBL

Variable

Required

Enable Input Flag


(digital)

LD, LP

IN1

Variable

Required

Input

LA, LD

REF_1100

5.77 PNTSTATUS

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OUTA

Variable

Optional

When the ENBL input


is TRUE, this output
reflects the state of the
bit specified by BITA.

LD, LP

OUTB

Variable

Optional

When the ENBL input


is TRUE, this output
reflects the state of the
bit specified by BITB.

LD, LP

REF_1100

351

5.78 POLYNOMIAL

5.78 POLYNOMIAL
Description
The POLYNOMIAL algorithm performs a mathematical fifth order polynomial function. The output
of the POLYNOMIAL algorithm is the result of a fifth order polynomial equation of the input using
the coefficients listed in this description.
Invalid Numbers and Quality
The quality of the analog input is propagated to the output. However, if the algorithm calculates an
invalid value for the output, the quality of the output is set to BAD, and the output value is invalid.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

352

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

CX0

R1-Real

CX1

MIN.
POINT
RECORD

Required

Tuning Diagram
Number

Tuning
Constant

Required

0.0

Zero coefficient of the


polynomial equation

R2-Real

Tuning
Constant

Required

0.0

First coefficient of the


polynomial equation

CX2

R3-Real

Tuning
Constant

Required

0.0

Second coefficient of
the polynomial
equation

CX3

R4-Real

Tuning
Constant

Required

0.0

Third coefficient of the


polynomial equation

CX4

R5-Real

Tuning
Constant

Required

0.0

Fourth coefficient of
the polynomial
equation

REF_1100

5.78 POLYNOMIAL

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

CX5

R6-Real

Tuning
Constant

Required

0.0

DESCRIPTION

MIN.
POINT
RECORD

Fifth coefficient of the


polynomial equation

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function
0

OUT = CX0 (IN1) + CX1 (IN1) + CX2 (IN1) + CX3 (IN1) + CX4 (IN1) + CX5 (IN1)

REF_1100

353

5.79 PREDICTOR

5.79 PREDICTOR
Description
This algorithm can be utilized to implement a standard Smith Predictor control system structure in
processes that are characterized by dynamics that include a deadtime. The advantage of using a
Smith Predictor is that the Controller (typically a PID) tuning can be performed as if no dead time
exists in the process, and hence a relatively high gain can be applied to expedite the response.
The output of the PREDICTOR is the result of the summation of the actual process variable and a
no-delay model output minus the with-delay model output. This is illustrated mathematically in the
functional diagram. The process input to the algorithm is gain and biased. The algorithm output
directly connects to the downstream PID algorithm process input. When no dead time is present
in the process (and the model), the process variable input to the PREDICTOR directly passes
through unmodified to the downstream PID process input. You have the option to configure the
algorithm to use either a first or second order model of the plant.
Since the internal memory size for each algorithm is limited, a long dead time must be realized by
an internal time delay plus a chain of cascaded external delays (implemented by TRANSPORT
algorithm).
The plant model dead time is realized by storing N samples of the process variable. The value of
N is a function of the Process dead-time and the control area loop time. The value of N is
calculated as follows:
N = (dead time (secs)) / (loop time (secs))
Due to memory limitations, the PREDICTOR algorithm can store up to eight samples. If the value
of N is greater than eight, the remainder of the samples can be realized by using Transport Delay
algorithms as shown in the configuration example of the PREDICTOR.
If the algorithm receives an invalid value as the input, or if it calculates an invalid value as the
output, the drop is placed into alarm and the output is set to the last GOOD value with quality set
to BAD. Under normal operation, the output propagates the quality of the PV input.
Functional Symbol

354

REF_1100

5.79 PREDICTOR
Algorithm Tuning
Algorithm Definitions listed as Tuning Constants for this algorithm are monitored and modified
with the Tuning Diagrams. Parameters for the process model (gain, first and second time
constants) can also be modified by outside algorithms through selectable pins. The guideline for
tuning is that the model gain and time constants should be set as close as possible to the
parameters reflecting the real process. Tuning for the length of dead time can be implemented by
modifying the internal time delay (in T3 field) and/or the number of samples in the TRANSPORT
algorithms.
If a first order model of the plant is desired, the FOTC field of the algorithm is initialized to the
value of the time constant (in seconds) of the 1st order model. The SOTC field should be set to a
value of zero. Here the time constant refers to the time (in seconds) that is required for the Step
response of the process to achieve 66% of its final value.
If a second order model of the plant is desired, more advanced system identification methods can
be used to determine the values of the FOTC and the SOTC.
Both the gain and the dead time can be calculated by applying a step input to the control output
(output of M/A in the configuration example) of the Control Loop. The time (in seconds) that it
takes for the process variable to begin to respond is the dead time. The gain value is calculated
by taking the ratio of the change in the process output divided by the change in input (change in
the process variable divided by the change in control output).
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LUInteger

Data Init

Required

106

Tuning diagram
number

PVG

R1 -Real

Tuning
Constant

Required

1.0

Gain on process input.


The gain on the input
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

PVB

R2 -Real

Tuning
Constant

Required

0.0

Bias on process
variable input

TPSC

R3 -Real

Tuning
Constant

Required

100.0

Output top of scale

BTSC

R4-Real

Tuning
Constant

Required

0.0

Output bottom of scale

* TDLY

T3-Real

Selectable

Required

0.0

Process time delay

LA

PV

Variable

Required

Process variable
analog input

LA

CTRL

Variable

Required

Down stream PID


control output

LA

REF_1100

355

5.79 PREDICTOR

N AM E

DLIN

LC ALG.
RECORD
FIELD
-

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Variable

Optional

Output of the
TRANSPORT
algorithm(s)

LA

* GAIN

T4 - Real

Selectable

Required

1.0

Gain on process
MODEL

LA

* FOTC

T1- Real

Selectable

Required

10.0

The 1st time constant


in the model.

LA

* SOTC

T2 - Real

Selectable

Required

0.0

The 2nd time constant

LA

OUT

Variable

Required

Analog output variable

LA

DOUT

Variable

Optional

Input to the
downstream
TRANSPORT. Analog
outvariable

LA

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may default
the parameter to a value and mark it as "Optional." However, for the control function to be executed properly,
you must enter a value for the parameter.

The control system structure can be illustrated by the following diagram. The dashed line box
contains the Predictor.

356

REF_1100

5.79 PREDICTOR
where:
y(s) = process variable
u(s) = control output
r(s) = set point
= dead time.

In the ideal case ,

and the closed-loop transfer function is:

REF_1100

357

5.80 PRIORITY Algorithm Package

5.80 PRIORITY Algorithm Package


The PRIORITY algorithm package is a combination of three individual algorithms that can be
used together to perform priority-based sequencing of devices:

358

PRIORITY algorithm -- consolidates complex logic to perform priority-based sequencing


when turning devices ON and OFF. The PRIORITY algorithm allows you to attach up to 16
devices and control these devices by turning them on or off based on a set of priorities
configured by the user.

PRIORITY-EXT algorithm -- dynamically calculates external priorities and is designed for use
with the PRIORITY algorithm. The algorithm allows priorities to be assigned to input device
channels by means of operating hours or other analog parameters related to devices.

PRIORITY-REJ algorithm -- provides a method to manage load rejection up to a predefined


number of devices and is designed for use with the PRIORITY algorithm. The algorithm
gathers information about priorities of devices and current devices in service, and then uses
this information to turn devices ON or OFF.

REF_1100

5.80 PRIORITY Algorithm Package

5.80.1 PRIORITY
Description
The purpose of this algorithm is to consolidate complex logic to perform priority-based sequencing
when turning devices ON and OFF. The PRIORITY algorithm allows the user to attach up to 16
devices and control these devices by turning them on or off based on a set of priorities configured
by the user.
Functional Symbol

REF_1100

359

5.80 PRIORITY Algorithm Package


Operation
The device status is determined from the feedback inputs (FBx) and the ready for control inputs
(RDYx). An FBx input is the ON/OFF status of a device (1 = ON, 0 = OFF). A RDYx input
indicates if the device is available for control (1 = ready, 0 = not ready).
The following describes the rules of operation:

A device can be switched ON only when the device is OFF and ready (FBx = 0 and RDYx =
1).

A device can be switched OFF only when the device is ON and ready (FBx = 1 and RDYx =
1).

If not connected, the RDYx input is considered ON if the corresponding FBx input is
connected.

If not connected, the RDYx input is considered OFF if the corresponding FBx input is also not
connected.

If not connected, the device status FBx input is considered OFF.

Number of devices required (NUMRQ)


The algorithm automatically detects the maximum number of devices available for control. This is
calculated by counting the number of devices connected to the FBx pins. At most, 16 individual
devices can be controlled by one Priority algorithm. The number of devices currently ON
(NUMON) is determined by the active FBx inputs. The user, and/or control logic, determines the
number of devices currently required to turn on (NUMRQ). That value is reflected in the NUMRQ
output and is determined by the configured limitations and system inputs.
NUMRQ is determined by:

Minimum/Maximum Required Devices:


The default range of NUMRQ is 0 to the maximum number of devices connected (up to 16).
Using Low Limit (LLIM), the value of NUMRQ can be forced to keep a minimum number of
devices on. Using High Limit (HLIM), the maximum number of devices allowed to be active
can be held less than the number connected, if desired. For example, if LLIM is set to 3 and
HLIM is set to 5, then the minimal number of devices active will not fall below 3 and the
maximum number of devices active will not exceed 5. If NUMON surpasses either one of
these limits, a high or low flag will be set in STAT (status section). If LLIM and HLIM are 0, the
algorithm will use its default range (0-16).
If LLIM < 0, LLIM will default to 0.
If LLIM > 16 or LLIM > HLIM, it will default to the value of HLIM.
If HLIM < LLIM, it will default to the value of LLIM.
If HLIM > 16, it will default to the maximum number of devices connected.

Note: If LLIM and HLIM are configured via signal diagrams, the fields will only allow a value
between 0 - 15 for LLIM and 1 - 16 for HLIM.

Increment/Decrement with INCDV / DECDV


A pulse into INCDV/DECDV will cause an increase/decrease (respectively) of NUMRQ. The
algorithm ensures this number will not drop below or exceed the range of required devices.
Holding in both of these inputs will cancel out both commands and holding in either input will
Increment/Decrement by only one device.

360

REF_1100

5.80 PRIORITY Algorithm Package

Change Several devices with ANUM / NUM


The requested number of devices input (NUM) can override the current number of required
devices, but only if it is in a valid range and the activate NUM input (ANUM) is set. The
INCDV/DECDV signals will be locked out while the ANUM input is set true.

Commanding Devices ON and OFF


The algorithm commands devices ON and OFF using the Command Device ON (DVON) and
Command Device OFF (DVOFF) packed output points, where each of the 16 bits represents the
corresponding device. The algorithm calculates when to turn a device ON and OFF based on
device priority and NUMRQ. In both the DVON and DVOFF outputs, bits for unconnected devices
(FBx) are always OFF.
The algorithm calculates the next device to switch ON or OFF and sets the appropriate bit for
these devices in the Next On (NON) and Next Off (NOFF) packed output points. This calculation
is based on device priority and whether the appropriate FBx and RDYx pins are set. Both outputs
provide an indication of what device would turn on/off next, if the priorities increase/decrease or
NUMRQ is changed.
A bit map of the devices the algorithm expects to be ON is displayed in the REQON output.
Note: Devices whose RDYx signal is off, but FBx is currently on, will be added to the REQON
bit map and to the NUMON value, as well.
Priority Management
Part of the calculation for turning a device ON or OFF is based on the device priority. Priorities are
set by the user using the DPRx fields or EDPRx pins. The priority for each device can be set from
1 to 16 using the DPRx fields, or 0x0 through 0xF using the EDPRx pins, with 1 or 0x0 being the
highest priority and 16 or 0xF being the lowest. More than one device can have the same priority,
in which case higher priority is given to the lower numbered device. For example, if device 1 and
device 13 have the same priority assigned, then device 1 will always be treated as the higher
priority.
The PRIORITY algorithm will try to run the highest priority device first, and work its way to the
lowest priority device, until the NUMRQ is reached (or there are no more devices ready to
activate). For example, if device 1 has a priority of 6 and device 2 has a priority of 3, then device 2
will run before device 1. However, if device 2s RDYx pin is deactivated and device 1s RDYx pin
is activated, then device 1 will turn on, even though it has a lower priority.
Priorities can be set in two ways:

In Automatic Mode:
Priorities can be changed via pins using the external device priority (EDPRx) inputs. Each
input contains packed priorities for four devices. Algorithms will only accept external priorities
if the submit device priority pin (SDPR) is set.

In Manual Mode:
Priorities can be changed via fields using the device priority DPRx fields. The algorithm will
set the new values, if the user sets the submit device priority SDPR field.

REF_1100

361

5.80 PRIORITY Algorithm Package


After the algorithm accepts the new priorities, they will be displayed in the CPRx fields. If DPRx is
set to any value outside the range of 1 to 16, CPRx will be set to 16, but the algorithm will not
change the DPRx fields.
Disabled/Auto/Manual Mode
Selecting between disabled, automatic, and manual modes can be done using the
DSABL/AUTO/MAN inputs or the Disable/Auto/Manual buttons.
In disabled mode, the algorithm will only update the status and number of active devices currently
on (NUMON) and will accept user priority changes. It will not attempt to turn on devices. In
addition, if the rotation mode (RTMOD) parameter is configured as on - ignore disabled
(ON_IGN_DSABL), the algorithm will continue to rotate priorities.
In Manual mode, certain algorithm commands are controlled by fields.
In Auto mode, certain algorithm commands are controlled via input pin connections.
The following parameters are affected by AUTO/MAN mode: INCDV, DECDV, NUM, ANUM,
CODV, CMAN, CAUTO, SDPR, and EDPRx/DPRx.
In addition, you may configure the algorithm to allow both manual and auto commands at the
same time while the algorithm is in auto mode using the manual/auto control (MACTL) parameter.
This allows the operator to direct the algorithm via pushbutton, even though the algorithm is in
auto.
If more than one of the mode signals is set at the same time, the algorithm will give precedence to
Disabled mode, then Manual mode, then Auto mode. For instance, if Manual and Auto are both
set at the same time, the algorithm will reject to Manual mode.
Operation Mode
There are three different ways to turn on several different devices. Using the operating mode
(OPMOD) parameter, devices can be turned on/off in three different modes: SERIAL, PARALLEL,
or serial on, parallel off (S_ON_P_OFF). In serial mode, the devices will be activated or
deactivated one at a time, until the NUMRQ and NUMON equal each other. In parallel mode, the
algorithm will calculate the difference between NUMRQ and NUMON and attempt to turn on/off
that many devices all at once. In serial on, parallel off mode, the algorithm will turn on devices in
serial mode but will turn off devices in parallel mode.
Rotation Mode
The PRIORITY algorithm provides the capability to automatically change device priorities
internally, based on the changing states of the FBx inputs. When Rotation mode is activated,
priorities are rotated each time one of the devices is turned on or off. When a device turns off, its
priority is set to the number of connected devices (lowest priority). Devices not connected are set
to a lower priority than all connected devices. For instance, if eight devices are connected, then all
the devices not connected are set to a higher number than 8, as long as the user didnt tune the
priorities manually. Turning on a device sets it to the highest priority of 1. Priorities of all other
devices are incremented or decremented respectively.
This mode can be switched off (NO_ROTATION), switched on (ROTATION), or switched on when
the algorithm is disabled (ON_IGN_DSABL) using the RTMOD parameter.

362

REF_1100

5.80 PRIORITY Algorithm Package


Changeover Mode
The algorithm can be configured to rotate devices based on a set of timers, rather than an
external mechanism. This functionality is called Changeover, and it is designed to even out the
wear of devices while they are running for an extended period of time.
In order to activate changeover, RTMOD must be in an active state (that is, ROTATION or
ROT_WHEN_ENBL modes). In addition, COMOD must be configured to UP_CHNGOVER or
DN_CHNGOVER modes and the three changeover timers need to be configured. The input signal
changeover enable (COEN) indicates that changeover is ready to run (when it is not connected
changeover is enabled by default).
Example:
First, a command is given to the algorithm to start a changeover via the Changeover Device
(CODV) signal. The algorithm will increase the NUMRQ from 3 to 4 (COMOD is set to
UP_CHNGOVER). The fourth Device would have the length of TAC timer (allowed time for
changeover) to turn on. If the device turns on in time, then NUMRQ will hold four devices until the
TTC (transition time) timer counts down to zero. Once TTC reaches zero, NUMRQ is set to 3
again and then the device that had the highest priority needs to turn off before TAC reaches zero.
Changeover will continue depending on whether the algorithm is in Changeover manual or
Changeover automatic. This is determined by the CMAN and CAUTO parameters. If both
parameters are set, or neither is set, then the algorithm will default to Changeover Manual. In
changeover manual mode, the user must start changeover via the CODV signal. In changeover
auto mode, the TBC (time between changeovers) timer determines the time between
changeovers. At the end of the TBC time, changeover will start again.
The following state table displays the possible states that changeover can be in. These states are
reported through the CSTAT output.
BITS

DESCRIPTION

Idle flag

Changeover manual

Changeover auto

On hold flag

Started flag

Pending flag

Finished flag

Ready flag

Reinitialize flag

Timeout flag

10

External Change flag

11

Manual reject flag

REF_1100

363

5.80 PRIORITY Algorithm Package

A description of the states is listed below:

Idle State
Job: To wait for algorithm to be ready.
Reason: If there are no devices to start-up or if the algorithm is disabled or RTMOD is
equal to NO_ROTATION or COMOD is equal to NO_CHNGOVER
Outputs Idle flag is set.
Next State: Ready

Ready State
Job: Wait for changeover sequence start.
Reason: Algorithm was idle, there are ready devices to turn ON/OFF, algorithm is
enabled and RTMOD and COMOD are set and the number of ON devices is equal to the
required number.
Outputs: Ready flag is set.
Next State: Started, On hold

Started State
Job: Start TAC count down. Increase/decrease required devices number.
Reason: Algorithm was ready and TBC time elapsed or changeover command was given.
Outputs: TAC is output to CTIME (Changeover Timer) pin. Started flag is set. New
REQON output is set.
Next State: Pending, On hold, Timeout

Pending State
Job: Start TTC count down.
Reason: Changeover was started and the number of ON devices is equal to the required
number.
Outputs: TTC is output to CTIME pin. Pending flag is set.
Next State: Finished or On hold

Finished State
Job: Start TAC count down. Increase/decrease required devices number.
Reason: Changeover was in Pending state, devices have been in the same state for
time set in TTC counter.
Outputs: TAC is output to CTIME pin. Finished Flag is set. New REQON output is set.
Next State: Idle, Timeout

On hold State
Job: To wait for enable changeover signal (COEN input).
Reason: Algorithm is ready to change state but COEN signal is not present.
Outputs: On hold flag is set.
Next State: Started, Pending, Finished

364

REF_1100

5.80 PRIORITY Algorithm Package

Timeout State
Job: Abandon changeover sequence, reject to manual changeover mode, restart TBC
countdown.
Reason: Requested change of device states did not occur during TAC countdown.
Outputs: Timeout flag is set. Changeover mode is set to manual. Manual reject flag is
set. TBC is output to CTIME pin.
Next State: Idle

External Change State


Job: Abandon changeover, reinitialize TBC countdown.
Reason: External change occurred during changeover sequence.
Outputs: External Change flag is set. TBC is output to CTIME pin.
Next State: Idle

Reinitialize State
Job: Reinitialize TBC countdown.
Reason: External change occurred when changeover was idle.
Outputs: Reinitialize flag is set. TBC is output to CTIME pin.
Next State: Idle

Manual Reject
Job: This is the error state for automatic changeover.
Reason(s): If there is an interruption in the sequence during Auto Changeover, then the
sequence will default to Manual Changeover.
Interruptions include the following:
- Unexpected change in the number of required devices.
- The control mode is changed from auto, to manual or disabled.
- SDPR is activated and new device priorities are excepted.
- One of the timers (TAC, TBC, TTC) finished counting down before its task could
complete.
- TBC is initially set to zero or less.
To clear the Manual Reject, start the sequence again. However, if the interruption was
never taken care of, or accrues again, then the sequence will again abort to this state.

REF_1100

365

5.80 PRIORITY Algorithm Package


Prohibited Configurations (PCx)
The algorithm allows the user to specify up to 32 prohibited configurations. This is represented as
32 individual bit maps. For example, if bits 0, 2, and 10 are set, then devices 1, 3 and 11 cannot
run at the same time. If the algorithm tries to change devices to a configuration that is forbidden,
then the algorithm will try to find another configuration that will work.
Note: Prohibited configurations only apply to exact instances of running devices. For instance, if
devices 1, 2, and 3 are prohibited from running, and devices 1, 2, 3, and 4 are requested to run,
then the prohibited configuration will not apply, and all four devices will run. However, if only
devices 1, 2, and 3 are attempting to run, then the algorithm will prevent the devices from
running.
Algorithm Status
Algorithm status and error information is stored in the STAT output. The STAT output bits are
defined as shown:

366

BITS

DESCRIPTION

Disabled mode.

Manual mode.

Auto mode.

Increasing.

Decreasing.

Priorities rotated.

Priority rotation enabled.

External priorities accepted.

Algorithm load or tuning change.

No more available devices to turn OFF.

10

No more available devices to turn ON.

11

Maximum or minimum number of ON devices reached.

12

Reserved.

13

Prohibited configuration.

14

External Priorities are different than current Priorities.

15

RESERVED.

REF_1100

5.80 PRIORITY Algorithm Package


SID Storage
In order to assist with graphics programming, all output point SIDs are stored in fields in the
algorithm. This allows the graphic to access multiple SIDs by accessing a single SID (the
algorithm LC record).
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

AUX1

C7-SID

Auxiliary

Required

DSABL

G1

Variable

RDY1

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

--

Priority Auxiliary
Record

LC

Optional

--

Disabled Mode
Request

LD, LP

Variable

Optional

--

Device 1 is ready
and available.

LD, LP

FB1

Variable

Required

--

Device 1 On/Off
Feedback

LD, LP

RDY2

Variable

Optional

--

Device 2 is ready
and available

LD, LP

FB2

Variable

Required

--

Device 2 On/Off
Feedback

LD, LP

RDY3

Variable

Optional

--

Device 3 is ready
and available

LD, LP

FB3

Variable

Optional

--

Device 3 On/Off
Feedback

LD, LP

RDY4

Variable

Optional

--

Device 4 is ready
and available

LD, LP

FB4

Variable

Optional

--

Device 4 On/Off
Feedback

LD, LP

RDY5

Variable

Optional

--

Device 5 is ready
and available

LD, LP

FB5

Variable

Optional

--

Device 5 On/Off
Feedback

LD, LP

RDY6

Variable

Optional

--

Device 6 is ready
and available

LD, LP

FB6

Variable

Optional

--

Device 6 On/Off
Feedback

LD, LP

RDY7

Variable

Optional

--

Device 7 is ready
and available

LD, LP

FB7

Variable

Optional

--

Device 7 On/Off
Feedback

LD, LP

RDY8

Variable

Optional

--

Device 8 is ready
and available

LD, LP

Inputs:

REF_1100

367

5.80 PRIORITY Algorithm Package

N AM E

368

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

FB8

Variable

Optional

RDY9

Variable

FB9

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

--

Device 8 On/Off
Feedback

LD, LP

Optional

--

Device 9 is ready
and available

LD, LP

Variable

Optional

--

Device 9 On/Off
Feedback

LD, LP

RDY10

Variable

Optional

--

Device 10 is ready
and available

LD, LP

FB10

Variable

Optional

--

Device 10 On/Off
Feedback

LD, LP

RDY11

Variable

Optional

--

Device 11 is ready
and available

LD, LP

FB11

Variable

Optional

--

Device 11 On/Off
Feedback

LD, LP

RDY12

Variable

Optional

--

Device 12 is ready
and available

LD, LP

FB12

Variable

Optional

--

Device 12 On/Off
Feedback

LD, LP

RDY13

Variable

Optional

--

Device 13 is ready
and available

LD, LP

FB13

Variable

Optional

--

Device 13 On/Off
Feedback

LD, LP

RDY14

Variable

Optional

--

Device 14 is ready
and available

LD, LP

FB14

Variable

Optional

--

Device 14 On/Off
Feedback

LD, LP

RDY15

Variable

Optional

--

Device 15 is ready
and available

LD, LP

FB15

Variable

Optional

--

Device 15 On/Off
Feedback

LD, LP

RDY16

Variable

Optional

--

Device 16 is ready
and available

LD, LP

FB16

Variable

Optional

--

Device 16 On/Off
Feedback

LD, LP

INCDV

CN:9

Variable

Optional

--

Increase number of
required ON devices

LD, LP

DECDV

CN:8

Variable

Optional

--

Decrease number of
required ON devices

LD, LP

MAN

CN:12

Variable

Optional

--

Manual mode
request

LD, LP

AUTO

CN:13

Variable

Optional

--

Auto mode request

LD, LP

NUM

G8

Variable

Optional

--

Required number of
ON devices (used
with ANUM).

LA

REF_1100

5.80 PRIORITY Algorithm Package

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

ANUM

G2

Variable

Optional

CODV

G3

Varaible

COEN

--

CMAN

DESCRIPTION

MIN.
POINT
RECORD

--

Activate "Number of
Required ON
Devices"

LD, LP

Optional

--

Request device
changeover

LD, LP

Variable

Optional

--

Device changeover
enabled

LD, LP

D4

Variable

Optional

--

Changeover Manual
mode

LD, LP

CAUTO

D5

Variable

Optional

--

Changeover Auto
mode

LD, LP

LLIM

G9

Selectable

Optional

--

Lowest number of
requested devices

LA

HLIM

B0

Selectable

Optional

--

Highest number of
requested devices

LA

EDPR1

Variable

Optional

--

External priorities for


devices 1 - 4.

LP

EDPR2

Variable

Optional

--

External priorities for


devices 5 - 8.

LP

EDPR3

Variable

Optional

--

External priorities for


devices 9 - 12.

LP

EDPR4

Variable

Optional

--

External priorities for


devices 13 - 16.

LP

G5

Variable

Optional

--

Submit device
priority pin.

LD, LP

DVON

B1 - SID

Variable

Required

--

Devices to be
switched ON, but not
OFF.

LP

DVOFF

B2 - SID

Variable

Required

--

Devices to be
switched OFF, but
not ON

LP

NON

YU - SID

Variable

Optional

--

Next device to go
ON

LP

NOFF

B4 - SID

Variable

Optional

--

Next device to go
OFF

LP

REQON

B5 - SID

Variable

Optional

--

Devices required to
be ON

LP

CURON

B6 - SID

Variable

Optional

--

Devices currently
ON

LP

RDYDV

B7 - SID

Variable

Optional

--

Devices ready and


available

LP

STAT

B8 - SID

Variable

Optional

--

Status

LP

SDPR

DEFAULT
VALUE

Outputs:

REF_1100

369

5.80 PRIORITY Algorithm Package

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NUMRQ

B9 - SID

Variable

Optional

--

Number of devices
required to be ON

LA

NUMON

C0 - SID

Variable

Optional

--

Number of devices
currently ON

LA

PRI1

C1 - SID

Variable

Optional

--

Priorities for devices


1 - 4.

LP

PRI2

C2 - SID

Variable

Optional

--

Priorities for devices


5-8

LP

PRI3

C3 - SID

Variable

Optional

--

Priorities for devices


9 - 12

LP

PRI4

C4 - SID

Variable

Optional

--

Priorities for devices


13 - 16

LP

CSTAT

C5-SID

Variable

Optional

--

Changeover status

LP

CTIME

C6-SID

Variable

Optional

--

Changeover timer

LA

Tuning
Constant

Required

Manual/Auto Control
mode:

Input Params:
MACTL

D0

0 - Normal
1 - Man in Auto
OPMOD

YQ

Tuning
Constant

Required

--

Operation mode:
0 - SERIAL
1 - PARALLEL
2 - S_ON_P_OFF
Serial on parallel off

RTMOD

D2

Tuning
Constant

Required

--

Rotation mode:
0 - OFF
1 - ON
2 - ON_IGN_DSABL

COMOD

YP

Tuning
Constant

Required

Changeover modes:

--

0 - NO_CHNGOVER
1 - UP_CHNGOVER
2 - DN_CHNGOVER

370

TBC

D6

Tuning
Constant

Required

Time period between


changeovers.

--

TAC

YN

Tuning
Constant

Required

Time allowed for


changeover
(between start and
stop).

--

REF_1100

5.80 PRIORITY Algorithm Package

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

TTC

D8

Tuning
Constant

Required

Time to remain in the


"Pending State"
during changeover.

--

CTMOD

D9

Alg. Init.

Variable

Control Mode:

--

0 - Disabled
1 - Manual
2 - Auto
DVFB

YM

Alg. Init.

Variable

Map of devices
feedback
connections

--

STATS

YL

Alg. Init.

Variable

STAT value (lower


16 bits) and CSTAT
value (higher 16
bits).

--

CPR1

E3

Alg. Init.

Variable

Current Priority for


Device 1.

--

CPR2

E4

Alg. Init.

Variable

Current Priority for


Device 2.

--

CPR3

YC

Alg. Init.

Variable

Current Priority for


Device 3.

--

CPR4

Y9

Alg. Init.

Variable

Current Priority for


Device 4.

--

CPR5

E7

Alg. Init.

Variable

Current Priority for


Device 5.

--

CPR6

E8

Alg. Init.

Variable

Current Priority for


Device 6.

--

CPR7

Y8

Alg. Init.

Variable

Current Priority for


Device 7.

--

CPR8

Y7

Alg. Init.

Variable

Current Priority for


Device 8.

--

CPR9

Y6

Alg. Init.

Variable

Current Priority for


Device 9.

--

CPR10

XY

Alg. Init.

Variable

Current Priority for


Device 10.

--

CPR11

XW

Alg. Init.

Variable

Current Priority for


Device 11.

--

CPR12

F4

Alg. Init.

Variable

Current Priority for


Device 12.

--

CPR13

F5

Alg. Init.

Variable

Current Priority for


Device 13.

--

CPR14

F6

Alg. Init.

Variable

Current Priority for


Device 14.

--

CPR15

XV

Alg. Init.

Variable

Current Priority for


Device 15.

--

REF_1100

371

5.80 PRIORITY Algorithm Package

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

CPR16

XU

Alg. Init.

Variable

Current Priority for


Device 16.

--

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Auxiliary Priority Algorithm Definitions


N AM E

372

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DPR1

G0

Tuning
Constant

Required

Priority for Device 1


(1 - 16)

--

DPR2

G1

Tuning
Constant

Required

Priority for Device 2


(1 - 16)

--

DPR3

G2

Tuning
Constant

Required

Priority for Device 3


(1 - 16)

--

DPR4

G3

Tuning
Constant

Required

Priority for Device 4


(1 - 16)

--

DPR5

G4

Tuning
Constant

Required

Priority for Device 5


(1 - 16)

--

DPR6

G5

Tuning
Constant

Required

Priority for Device 6


(1 - 16)

--

DPR7

G6

Tuning
Constant

Required

Priority for Device 7


(1 - 16)

--

DPR8

G7

Tuning
Constant

Required

Priority for Device 8


(1 - 16)

--

DPR9

G8

Tuning
Constant

Required

Priority for Device 9


(1 - 16)

--

DPR10

G9

Tuning
Constant

Required

10

Priority for Device 10


(1 - 16)

--

DPR11

B0

Tuning
Constant

Required

11

Priority for Device 11


(1 - 16)

--

DPR12

B1

Tuning
Constant

Required

12

Priority for Device 12


(1 - 16)

--

DPR13

B2

Tuning
Constant

Required

13

Priority for Device 13


(1 - 16)

--

DPR14

YU

Tuning
Constant

Required

14

Priority for Device 14


(1 - 16)

--

DPR15

B4

Tuning
Constant

Required

15

Priority for Device 15


(1 - 16)

--

DPR16

B5

Tuning
Constant

Required

16

Priority for Device 16


(1 - 16)

--

PC1

C8

Tuning
Constant

Required

Prohibited
configuration 1

--

REF_1100

5.80 PRIORITY Algorithm Package

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

PC2

YT

Tuning
Constant

Required

Prohibited
configuration 2

--

PC3

D0

Tuning
Constant

Required

Prohibited
configuration 3

--

PC4

YQ

Tuning
Constant

Required

Prohibited
configuration 4

--

PC5

D2

Tuning
Constant

Required

Prohibited
configuration 5

--

PC6

YP

Tuning
Constant

Required

Prohibited
configuration 6

--

PC7

D4

Tuning
Constant

Required

Prohibited
configuration 7

--

PC8

D5

Tuning
Constant

Required

Prohibited
configuration 8

--

PC9

D6

Tuning
Constant

Required

Prohibited
configuration 9

--

PC10

YN

Tuning
Constant

Required

Prohibited
configuration 10

--

PC11

D8

Tuning
Constant

Required

Prohibited
configuration 11

--

PC12

D9

Tuning
Constant

Required

Prohibited
configuration 12

--

PC13

YM

Tuning
Constant

Required

Prohibited
configuration 13

--

PC14

YL

Tuning
Constant

Required

Prohibited
configuration 14

--

PC15

E2

Tuning
Constant

Required

Prohibited
configuration 15

--

PC16

E3

Tuning
Constant

Required

Prohibited
configuration 16

--

PC17

E4

Tuning
Constant

Required

Prohibited
configuration 17

--

PC18

YC

Tuning
Constant

Required

Prohibited
configuration 18

--

PC19

Y9

Tuning
Constant

Required

Prohibited
configuratioN 19

--

PC20

E7

Tuning
Constant

Required

Prohibited
configuration 20

--

PC21

E8

Tuning
Constant

Required

Prohibited
configuration 21

--

PC22

Y8

Tuning
Constant

Required

Prohibited
configuration 22

--

PC23

Y7

Tuning
Constant

Required

Prohibited
configuration 23

--

REF_1100

373

5.80 PRIORITY Algorithm Package

N AM E

374

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

PC24

Y6

Tuning
Constant

Required

Prohibited
configuration 24

--

PC25

XY

Tuning
Constant

Required

Prohibited
configuration 25

--

PC26

XW

Tuning
Constant

Required

Prohibited
configuration 26

--

PC27

F4

Tuning
Constant

Required

Prohibited
configuration 27

--

PC28

F5

Tuning
Constant

Required

Prohibited
configuration 28

--

PC29

F6

Tuning
Constant

Required

Prohibited
configuration 29

--

PC30

XV

Tuning
Constant

Required

Prohibited
configuration 30

--

PC31

XU

Tuning
Constant

Required

Prohibited
configuration 31

--

PC32

XR

Tuning
Constant

Required

Prohibited
configuration 32

--

REF_1100

5.80 PRIORITY Algorithm Package

5.80.2 PRIORITY-EXT
Description
The PRIORITY-EXT algorithm allows the user to dynamically calculate external priorities and is
designed for use with the PRIORITY algorithm. The algorithm allows priorities to be assigned to
input device channels by means of operating hours or other analog parameters related to devices.
Functional Symbol

Sorting
The PRIORITY-EXT algorithm sorts inputs using the status of each analog input based on the
status priority mode (SPMOD), and the value of the analog input (AINx) based on the sorting
mode (SOMOD).
Status Priority Mode
The algorithm sorts by Status first. The status priority mode is configured via the SPMOD
parameter:
Note: Even if SPMOD is set to NONE, inputs that are not connected will have the lowest
priorities.

Standard
Status Priority 0 Quality - Good
Status Priority 1 Quality - Fair
Status Priority 2 Quality - Poor
Status Priority 3 Quality - Bad
Status Priority 4 Sensor
Status Priority 5 Timeout
Status Priority 7 Point Not Connected

Custom user can assign each status (SPG, SPF, SPP, SPB, SPS, SPT) a custom priority
(0-5)

None - Priorities are not taken into account while sorting inputs

Note: It is possible for a point to have an assigned quality and also be in Sensor or Timeout
status. In this scenario, Timeout takes precedence over Sensor, and Sensor takes precedence
over all Quality statuses.

REF_1100

375

5.80 PRIORITY Algorithm Package


Sorting Mode
Once the algorithm sorts by status, it will then sort the inputs by value. Sorting mode (SOMOD)
determines how the algorithm will sort the inputs. If ascending, the algorithm will assign a greater
priority to the lower numbered input with the lowest value. If descending, the algorithm will assign
greater priority to the higher numbered input with the highest value.
External Device Priority (EDPR) Outputs
Each output contains packed priorities for four devices. Priorities are zero based (Highest priority 0x0 through Lowest priority - 0xF) are output through four packed points EDPR1-EDPR4. Bits 0-3
of EDPR1 contain the priority for input/device 1; bits 4-7 in EDPR1 contain the priority for
input/device 2; bits 8-11 in EDPR1 contain the priority for input/device 3; and bits 12-15 contain
the priority for input/device 4. EDPR2 applies to inputs 5-8, EDPR3 applies to inputs 9-12, and
EDPR4 applies to inputs 13-16. The EDPRx outputs can be connected directly to the EDPRx
inputs of the PRIORITY algorithm.
Current Device Priority (CPR) Fields
The current device priority fields store the same values that are in the EDPR outputs for use with
graphics applications. The priorities in these fields are one based. For instance, if the priority
displayed in EDPRx is 0x0, the priority will display as 1 in the CPR field. If it is a 0x5 in EDPRx, it
will display as a 6 in the CPR field.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Inputs:

376

AIN1

--

Variable

Required

--

Analog input 1 to use


for sorting.

LA

AIN2

--

Variable

Required

--

Analog input 2 to use


for sorting.

LA

AIN3

--

Variable

Optional

--

Analog input 3 to use


for sorting.

LA

AIN4

--

Variable

Optional

--

Analog input 4 to use


for sorting.

LA

AIN5

--

Variable

Optional

--

Analog input 5 to use


for sorting.

LA

AIN6

--

Variable

Optional

--

Analog input 6 to use


for sorting.

LA

AIN7

--

Variable

Optional

--

Analog input 7 to use


for sorting.

LA

AIN8

--

Variable

Optional

--

Analog input 8 to use


for sorting.

LA

AIN9

--

Variable

Optional

--

Analog input 9 to use


for sorting.

LA

AIN10

--

Variable

Optional

--

Analog input 10 to
use for sorting.

LA

REF_1100

5.80 PRIORITY Algorithm Package

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

AIN11

--

Variable

Optional

--

Analog input 11 to
use for sorting.

LA

AIN12

--

Variable

Optional

--

Analog input 12 to
use for sorting.

LA

AIN13

--

Variable

Optional

--

Analog input 13 to
use for sorting.

LA

AIN14

--

Variable

Optional

--

Analog input 14 to
use for sorting.

LA

AIN15

--

Variable

Optional

--

Analog input 15 to
use for sorting.

LA

AIN16

--

Variable

Optional

--

Analog input 16 to
use for sorting.

LA

EDPR1

--

Variable

Required

--

Priorities for devices


1 - 4.

LP

EDPR2

--

Variable

Optional

--

Priorities for devices


5 - 8.

LP

EDPR3

--

Variable

Optional

--

Priorities for devices


9 - 12.

LP

EDPR4

--

Variable

Optional

--

Priorities for devices


13 - 16.

LP

X1

Tuning
Constant

Required

Sorting mode:

--

Outputs:

Input Params:
SOMOD

0 - Ascending
1 - Descending

SPMOD

X2

Tuning
Constant

Required

Status Priority:

--

0 - Standard
1 - Custom
2 - None

SPG

X4

Tuning
Constant

Required

Assigned Priority for


status: GOOD
quality.

--

SPF

X5

Tuning
Constant

Required

Assigned Priority for


status: FAIR quality.

--

SPP

X6

Tuning
Constant

Required

Assigned Priority for


status: POOR
quality.

--

SPB

X7

Tuning
Constant

Required

Assigned Priority for


status: BAD quality.

--

SPS

X8

Tuning
Constant

Required

Assigned Priority for


status: SENSOR.

--

REF_1100

377

5.80 PRIORITY Algorithm Package

N AM E

378

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

SPT

X9

Tuning
Constant

Required

Assigned Priority for


status: TIMEOUT.

--

CPR1

G0

Alg. Init.

Variable

Current Priority for


Device 1.

--

CPR2

G1

Alg. Init.

Variable

Current Priority for


Device 2.

--

CPR3

G2

Alg. Init.

Variable

Current Priority for


Device 3.

--

CPR4

G3

Alg. Init.

Variable

Current Priority for


Device 4.

--

CPR5

G4

Alg. Init.

Variable

Current Priority for


Device 5.

--

CPR6

G5

Alg. Init.

Variable

Current Priority for


Device 6.

--

CPR7

G6

Alg. Init.

Variable

Current Priority for


Device 7.

--

CPR8

G7

Alg. Init.

Variable

Current Priority for


Device 8.

--

CPR9

G8

Alg. Init.

Variable

Current Priority for


Device 9.

--

CPR10

G9

Alg. Init.

Variable

Current Priority for


Device 10.

--

CPR11

B0

Alg. Init.

Variable

Current Priority for


Device 11.

--

CPR12

B1

Alg. Init.

Variable

Current Priority for


Device 12.

--

CPR13

B2

Alg. Init.

Variable

Current Priority for


Device 13.

--

CPR14

YU

Alg. Init.

Variable

Current Priority for


Device 14.

--

CPR15

B4

Alg. Init.

Variable

Current Priority for


Device 15.

--

CPR16

B5

Alg. Init.

Variable

Current Priority for


Device 16.

--

REF_1100

5.80 PRIORITY Algorithm Package

5.80.3 PRIORITY-REJ
Description
The PRIORITY-REJ algorithm provides a method to manage load rejection up to a predefined
number of devices and is designed for use with the PRIORITY algorithm. The algorithm gathers
information about priorities of devices and current devices in service, and then uses this
information to turn devices on or off.
Functional Symbol

Current State of Devices


1. Devices Ready for Control (RDYDV)
Each bit in the packed RDYDV input represents one device. If a bit is active, then the
algorithm assumes the device is ready to be controlled and can be turned on/off as needed.
When a bit is not active, the required on (RQON) output will reflect the current state of that
device based on the CURON input.
The RDYDV input is designed to be used with the RDYDV output from the PRIORITY
algorithm. If the RDYDV input is not connected, all devices are considered ready for
control by this algorithm.
2. Devices Currently ON (CURON)
Each bit in the packed CURON input represents one device. If a bit is active, then the
algorithm assumes the device is currently on. The algorithm then limits the number of devices
the operator wants to remain on, based on this input and the required number of devices
(NUM) input. Only devices that are ON and ready (RDYDV) can be activated or deactivated.
The resulting algorithm calculation is reflected in the required on (RQON) output. If NUM is
greater than the number of devices currently on, then the algorithm will not attempt to turn
additional devices on.
The CURON input is designed to be used with the CURON output from the PRIORITY
algorithm. However, the CURON input can also be connected to another PRIORITY-REJ
algorithm (RQON) output if cascading algorithms are being used.
3. Required Number of Devices (NUM)
Required Number of Devices (NUM) controls the number of devices that the algorithm will
activate using RQON. For example, if seven devices are available (both CURON and
RDYDV) and NUM is set to 3, then three devices will be selected to keep on. The algorithm
will choose the devices based on the priority assigned to them via the PRIx pins. Higher
priority devices will be selected first.

REF_1100

379

5.80 PRIORITY Algorithm Package


4. Devices Currently OFF (DVOFF) and Reject (REJ)
Each bit in the packed DVOFF input represents one device. When the reject input (REJ) is
inactive, the required off (RQOFF) output will reflect the DVOFF input. When the REJ input is
active, the RQOFF output will attempt to turn off all devices that are not currently selected to
stay on (RQON).
The DVOFF input is designed to be used with the DVOFF output from the PRIORITY
algorithm. This input may also be connected to the Devices required off (RQOFF) output
from another PRIORITY-REJ algorithm.
Device Priority Inputs
Each PRIx input contains the packed priorities for four devices (PRI1 though PRI4). For example,
Bits 0-3 of PRI1 contain the priority for device 1; bits 4-7 contain the priority for device 2; bits 8-11
contain the priority for device 3; and bits 12-15 contain the priority for device 4. PRI2 applies to
devices 5-8, PRI3 applies to devices 9-12, and PRI4 applies to devices 13-16.
The PRIx inputs are designed to be used with the PRIx outputs of the PRIORITY algorithm. The
priorities of each device can only be set between 0x0 (the highest priority) and 0xF (the lowest
priority). If two (or more) devices have the same priority, then the lowest numbered device will be
given higher priority.
Algorithm Status
Algorithm status and error information is stored in the STAT output. The STAT output bits are
defined as shown:

380

BIT

DESCRIPTION

OK flag -- set when it is possible to keep the required number of devices.

Reject flag -- set when the REJ command is given.

Equal flag -- set when the number of currently active devices equals the required number of
devices.

Inadequate Number of Devices flag -- set when the required number of devices is greater
than the number of devices that can be activated.

Surplus Number of Devices flag -- set when it is not possible to turn off sufficient number of
devices.

Tuning error flag -- set when the required number of devices is less than 0 or greater than 16.

REF_1100

5.80 PRIORITY Algorithm Package


SID Storage
In order to assist with graphics programming, all output point SIDs are stored in fields in the
algorithm. This allows the graphic to access multiple SIDs by accessing a single SID (the
algorithm LC record). Output SIDs are mapped into the C0 - C2 fields.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Inputs:
REJ

--

Variable

Required

--

Active Reject mode

LD

RDYDV

--

Variable

Optional

--

Devices available for


control

LP

CURON

--

Variable

Optional

--

Devices currently on

LP

Selectable

Required

--

Required number of
ON devices

LA

NUM

G0

DVOFF

--

Variable

Optional

--

Devices currently off

LP

PRI1

--

Variable

Optional

--

Packed priorities for


channels 1-4

LP

PRI2

--

Variable

Optional

--

Packed priorities for


channels 5-8

LP

PRI3

--

Variable

Optional

--

Packed priorities for


channels 9-12

LP

PRI4

--

Variable

Optional

--

Packed priorities for


channels 13-16

LP

RQOFF

B0
C0-SID

Variable

Required

--

Devices required to
be OFF.

LP

RQON

B1
C1-SID

Variable

Optional

--

Devices required to
be ON.

LP

STAT

B2
C2-SID

Variable

Optional

--

Algorithm status.

LP

Outputs:

REF_1100

381

5.81 PSLT

5.81 PSLT
Description
PSLT calculates Pressure of Saturated Liquid given its Temperature. It is one of the functions of
the STEAMTABLE algorithm (see page 492).
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
PSLT input and output values

382

P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

TEMP

32.0

705.47

(OUT 1)

PRES

0.0885891400

16000.00

REF_1100

5.82 PSVS

5.82 PSVS
Description
PSVS calculates Pressure of Saturated Vapor given its Entropy (S). It is one of the functions of
the STEAMTABLE algorithm (see page 492).
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
PSVS input and output values
P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

ENTR

1.0612

2.1873

(OUT 1)

PRES

0.08858914

3208.234

REF_1100

383

5.83 PULSECNT

5.83 PULSECNT
Description
The PULSECNT algorithm counts the number of FALSE to TRUE transitions of the digital input
point. If the Reset flag is TRUE, the output count is set to zero before the digital value is checked.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

RSET

Variable

Required

Input (digital);
reset flag

LD, LP

RSET

IN1

Variable

Required

Input (digital
signal)

LD, LP

IN1

OUT

Variable

Required

Output
(analog);
count

LA

OUT

Function
IF RSET
THEN OUT = 0
IF IN1 = TRUE AND OLDIN = FALSE
THEN OUT = OUT + 1
where:
OLDIN = locally retained variable

384

REF_1100

5.84 QAVERAGE

5.84 QAVERAGE
Description
The QAVERAGE algorithm output is the unweighted average of the N inputs. Analog inputs
whose quality is BAD, or whose value is not being updated, are excluded from the average
calculation so that only the remaining inputs are averaged. The quality of the output equals the
worst quality of all the input values averaged. If all points have BAD quality, the old output value is
retained, and the quality of the output is set BAD.
Invalid Numbers and Quality
The values of the analog inputs to the algorithm are checked for invalid real numbers. If the value
of an input is invalid, that input is considered to have BAD quality.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

IN1

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Variable

Optional

Input (analog)

LA

Variable

Required

Output (analog)

LA

IN8
OUT

REF_1100

385

5.84 QAVERAGE
Function
If the quality is GOOD for all points, and the points are being updated,
THEN OUT = (IN1 + ...INN)/N
Any point with BAD quality is excluded from the average. If all points have BAD quality,
THEN OUT = OLDOUT
and the quality is BAD.

386

REF_1100

5.85 QUALITYMON

5.85 QUALITYMON
Description
The QUALITYMON algorithm sets the digital output signal (OUT) TRUE if the input value (IN1)
has the same quality as selected in the quality type field(X1). IN1 can be either an analog or
digital variable.
Invalid Numbers and Quality
The value of the input (IN1) to the algorithm is checked for invalid real numbers. If the input value
is invalid, that input is considered to have BAD quality, and the digital output (OUT) is set TRUE.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Integer

Data Init

Required

92

CHK

X1-Byte

Data Init

Required

BAD

DESCRIPTION

MIN.
POINT
RECORD

Tuning diagram
number

Quality check type:

BAD, FAIR, Not


GOOD, GOOD
IN1

Variable

Required

Input (analog or
digital)

LA, LD

OUT

Variable

Required

Output (digital)

LD, LP

REF_1100

387

5.85 QUALITYMON
Function
If the quality of IN1 is the selected quality type, or if its value is not being updated,
THEN OUT = TRUE
ELSE
OUT = FALSE

388

REF_1100

5.86 RATECHANGE

5.86 RATECHANGE
Description
The RATECHANGE algorithm calculates the analog value of OUT as the smoothed rate of
change of IN1. The smoothing time constant (SMTH) can either be dynamic, using an input pin, or
a constant, by defining it within the algorithm. This calculation is performed once per loop cycle
giving OUT units of [IN1] per loop time.
Invalid Numbers and Quality
If the smoothing time constant (SMTH) is less than zero, the negative value is ignored and the
calculation is performed with a smoothing time constant of 0. The quality of OUT is then set to
BAD. The quality of OUT will also be set to BAD if an invalid real number is read from IN1. Unless
either of these situations occur, the quality of OUT will be the same as the quality of IN1.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

Required

71

Tuning Diagram
Number

* SMTH

R1-Real

Selectable

Required

0.0

Smoothing time
constant in seconds

MIN.
POINT
RECORD
LA

Note: This is
approximately 1/5 of
the total time to
settle. For example,
for 1 minute total, set
SMTH to 12
seconds.
IN1

REF_1100

Variable

Required

Input (analog)

LA

389

5.86 RATECHANGE

N AM E

OUT

LC ALG.
RECORD
FIELD
-

TYPE

REQUIRED/
OPTIONAL

Variable

Required

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Output (analog)

LA

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may default
the parameter to a value and mark it as "Optional." However, for the control function to be executed properly,
you must enter a value for the parameter.

Function

where:

390

S(N)

= smoothed value of the analog variable (alpha x IN1) + (beta x old


smoothed value)

SS(N)

= double smoothed value of the analog variable (alpha x S(N)) + (beta x old
double smoothed value)

alpha

= 1 - E(-loop time/SMTH)

beta

= E(-loop time/SMTH)

loop time

= sampling time (loop time)

REF_1100

5.87 RATELIMIT

5.87 RATELIMIT
Description
The RATELIMIT algorithm is a rate limiter with fixed rate limit and flag when rate limit is
exceeded. For the RATELIMIT algorithm, if the rate of change of the output is less than or equal
to the rate limit, the output equals the input, and the digital output flag is set FALSE. If the rate of
change of the output is greater than the rate limit, the output change is limited to the rate limit
value and the digital output flag is set to TRUE. The quality of the analog input is propagated to
the output.
Invalid Numbers and Quality
The input value (IN1) to the algorithm is checked for invalid real numbers. If the input value is
invalid, the output is invalid and the quality of the output is set to BAD. Also, if the input is invalid,
the digital output flag retains its last value and its quality is set to BAD. If the input value is valid,
the quality of the input is propagated to the output.
Functional Symbol

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog track point. This algorithm takes the following action in response to the information
found in the analog input signal TRIN:
BIT

REF_1100

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

Implemented

Passed through**

20

Raise inhibit

Implemented

Passed through**

21

Conditional Track

No action

Not used

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

391

5.87 RATELIMIT

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

26

Auto mode

No action

Not used

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definition given
in Setting Tracking Signals (see page 16).

The high and low limit flags and the tracking signals from the algorithm are output to TOUT, to be
used for display and by an upstream algorithm. If the output value is invalid, the quality of OUT is
set to BAD. Otherwise, the quality of OUT is set to the quality of the input when not in tracking
mode. When tracking, the quality is set to the quality of the track input variable.
Note: If the algorithm generates an invalid track output value, the IN1 input value is used as the
track output, unless it is invalid. The track output value is not updated if both the calculated track
output and IN1 input values are invalid.
Algorithm Record Type = LC
Algorithm Definitions

392

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

TPSC

R2-Real

BTSC

MIN.
POINT
REC.

Required

20

Tuning Diagram
Number

Tuning
Constant

Required

100

Maximum value of
output point.

R3-Real

Tuning
Constant

Required

0.0

Minimum value of
output point.

TRAT

R4-Real

Tuning
Constant

Required

2.5

Track Ramp Rate


(units per second)

* RALM

R1-Real

Selectable

Required

0.0

Rate of change limit in


units per second

LA

IN1

Variable

Required

Input (analog)

LA

TOUT

Variable

Required

Track output value; For


mode and status
signals for input

LA

OUT

Variable

Required

Output (analog)

LA

TRIN

Variable

Optional

Tracking and limiting


mode signals and track
value

LA

REF_1100

5.87 RATELIMIT

N AM E

LC ALG.
RECORD
FIELD

FOUT

TYPE

REQUIRED/
OPTIONAL

Variable

Required

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Output (digital)

LD, LP

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

Function
PLR = RALM * (TS/1000)
TEMP = (IN1 - OLDOUT)
IF ABS(TEMP) < PLR
THEN OUT = IN1
FOUT = FALSE
ELSE
IF TEMP > 0.0
THEN OUT = OLDOUT + RALM
ELSE
OUT = OLDOUT - RALM
FOUT = TRUE
IF OUT > TPSC
OUT = TPSC
ELSE
IF OUT < BTSC
OUT = BTSC
where:
PLR

rate per loop

OLDOUT

locally retained variable

TEMP

local, temporary variable

TS

sampling time (loop time)

REF_1100

393

5.88 RATEMON

5.88 RATEMON
Description
The RATEMON algorithm is a rate of change monitor with reset deadband and fixed/variable rate
limit. For the RATEMON algorithm, if the input value (IN1) increases at a rate faster then the
user-specified rate of change limit in the positive direction, or decreases at a rate faster than the
user-specified rate of change limit in the negative direction, the digital output flag (OUT) is set
TRUE. To reset the output flag, the input value must increase at a rate slower than the rate of
change limit in the positive direction minus the deadband on the positive rate of change limit, or
decrease at a rate slower than the rate of change limit in the negative direction minus the
deadband on the negative rate of change limit.
Invalid Numbers and Quality
The input value (IN1) is checked for invalid real numbers. If IN1 is invalid, the digital flag retains
its last value and its quality is set to BAD.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

394

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

* PRAT

R1-Real

PDB

* NRAT

MIN.
POINT
RECORD

Required

75

Tuning Diagram
Number

Selectable

Required

0.0

Rate of change limit in


the positive direction
(absolute value)

R2-Real

Tuning
Constant

Optional

0.0

Deadband on the
positive rate of change
limit (absolute value)

R3-Real

Selectable

Required

0.0

Rate of change limit in


the negative direction
(absolute value)

LA

LA

REF_1100

5.88 RATEMON

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

NDB

R4-Real

Tuning
Constant

Optional

0.0

DESCRIPTION

MIN.
POINT
RECORD

Deadband on the
negative rate of
change limit (absolute
value)

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (digital)

LD, LP

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may default
the parameter to a value and mark it as "Optional." However, for the control function to be executed properly,
you must enter a value for the parameter.

Function
RATE = (IN1 - OLDIN)/TS
IF (RATE > PRAT)
OR (RATE < (0 - NRAT))
THEN OUT = TRUE
ELSE
IF (RATE < (PRAT - PDB))
AND (RATE > (0 - (NRAT - NDB)))
THEN OUT = FALSE
where:
RATE

= local, temporary, variable

OLDIN = locally retained, real variable


TS

REF_1100

= sampling time (control task loop time)

395

5.89 RESETSUM

5.89 RESETSUM
Description
The RESETSUM algorithm accumulates until told to reset. For the RESETSUM algorithm, if the
Run flag is TRUE, the output value (OUT) is the sum of the gained input value (IN1) and the old
output value. If the Freeze flag is TRUE, the output value is also stored in the frozen output
(FOUT). As OUT continues to totalize IN1, the value in FOUT is frozen when the Freeze flag
reverts back to FALSE. If the Reset flag is TRUE, OUT is set to the reset count stored in the R1
field of the algorithm record. If the Run flag is FALSE, the algorithm does nothing. You may tune
the output value anytime by setting the R3 field of the algorithm record to some non-zero value.
The R3 value is checked first; then, the Reset flag is checked before the summation is made.
Functional Symbol

The quality of the input is propagated to the output points (OUT and FOUT) under the following
conditions:
1. The RUN flag is TRUE.
2. The outputs are not scan-removed.
3. The values of the inputs and outputs are valid real numbers.
4. The RSET flag must be FALSE for the quality of the output (OUT) to be updated. However, if
the RSET flag is TRUE, the output retains its last quality value.
5. The freeze flag (FFLG) must be TRUE for the quality of the frozen point (FOUT) to be
updated. However, if the freeze flag is FALSE, the frozen output (FOUT) retains its last quality
value.

396

REF_1100

5.89 RESETSUM
The quality of the output is not affected by any requests to tune the value of the output through
the use of the R3 record field or by setting the RSET flag to TRUE.
Quality propagation is overruled by invalid real numbers. If the input (IN1) contains an invalid real
number, the quality of the output (OUT) is set to BAD, providing that the point is not
scan-removed and that the RUN flag is TRUE. The quality of the frozen output point (FOUT) is
also set to BAD if the point is not scan-removed and the freeze flag (FFLG) is TRUE.
Invalid Numbers and Quality
The value of the input (IN1) is checked for invalid real numbers. If the input value is invalid, the
output (OUT) retains its last valid value. If the input value is valid, the quality of IN1 is propagated
to OUT.
If the FFLG flag is TRUE and the input is invalid, the value of the frozen output (FOUT) is equal to
the output (OUT).
If the input is invalid, any requests to digitally reset the output value (OUT) through the use of the
RSET flag are ignored.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Integer

Data Init.

Required

RCNT

R1-Real

Tuning
Constant

Required

0.0

GAIN

R2-Real

Tuning
Constant

Required

TRST

R3-Real

Tuning
Constant

Optional

0.0

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram Number

Reset count

Gain on the input

Tuning reset count

IN1

Variable

Required

Input (analog)

LA

FFLG

Variable

Required

Input (digital); Freeze flag

LD, LP

RSET

Variable

Required

Input (digital); Reset flag

LD, LP

RUN

Variable

Required

Input (digital); Run flag

LD, LP

OUT

Variable

Required

Output (analog)

LA

FOUT

Variable

Required

Output (analog); frozen


value

LA

REF_1100

397

5.89 RESETSUM
Function

where:
TEMP = local, temporary, real variable

398

REF_1100

5.90 RLICONFIG

5.90 RLICONFIG
Description
The RLICONFIG algorithm is used to send data constant information to the Loop Interface card. If
the data stored in the card versus the data stored in the algorithm is different, then the algorithm
sends the information in the algorithm to the card. The algorithm supports tuning either the
Control Defined Process Variable, the Setpoint or Output/Drive, Analog Input 1, or Analog Input 2
sections of the Loop Interface card.
The optional STAT output point contains the status of the Loop Interface card. The following
conditions apply:

If bit 0 is true, then the algorithm cannot communicate with the card.

If bit 1 is true, the algorithm is configuring the setpoint section.

If bit 2 is true, the algorithm is configuring the process variable section.

If bit 3 is true, the algorithm is configuring the electric drive section.

If bit 4 is true, the algorithm is configuring the analog input 1 section.

If bit 5 is true, the algorithm is configuring the analog input 2 section.

Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

CARD

X4 - Byte

Data Init

Required

PCI card number

HWAD

B2 - Integer

Data Init

Required

Card hardware
address

TYPE

X1 - Byte

Data Init

Required

Setpoint

Section to configure.
The choices are:
Setpoint
CTLR_PV
Drive
Analog

ATYP

X9 - Byte

Data Init

Required

AI1

Analog point section


to configure:
AI1
AI2

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

399

5.90 RLICONFIG

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

PCST

X2 -Byte

Data Init

Required

25

Setpoint seconds for


full scale

TIST

X3 - Byte

Data Init

Required

Setpoint percent
change

TPST

R1 - Real

Data Init

Required

100

Setpoint top of scale

BTST

R2 - Real

Data Init

Required

Setpoint bottom of
scale

EUST

AJ - ASCII

Data Init

Required

PCT

Setpoint engineering
units

TPPV

R3 - Real

Data Init

Required

100

Process variable AI1,


AI2 top of scale

BTPV

R4 - Real

Data Init

Required

Process variable AI1,


AI2 bottom of scale

EUPV

AK - ASCII

Data Init

Required

PCT

Process variable AI1,


AI2 engineering units

FINE

G0 - Integer

Data Init

Required

Fine deadband

CRSE

G1 - Integer

Data Init

Required

Coarse deadband

SLOW

G2 - Integer

Data Init

Required

771

Slow raise/lower
pulse on/off

(See note below.)


FAST

G3 - Integer

Data Init

Required

65280

Fast raise/lower pulse


on/off

(See note below.)


PCNT

X5 - Byte

Data Init

Required

Narrow band percent


change

TIME

X6 - Byte

Data Init

Required

25

Seconds for full scale

PRAT

X7 - Byte

Data Init

Required

Priority runback rate

CTYP

X8 - Byte

Data Init

Required

Conversion Type

(Valid choices are 1 6)

400

COE00

S1 -Real

Data Init

Required

Coefficient 0

COE01

S2 -Real

Data Init

Required

Coefficient 1

COE02

S3 -Real

Data Init

Required

Coefficient 2

COE03

S4 -Real

Data Init

Required

Coefficient 3

COE04

S5 -Real

Data Init

Required

Coefficient 4

COE05

S6 -Real

Data Init

Required

Coefficient 5

COE06

S7 -Real

Data Init

Required

Coefficient 6

COE07

S8 -Real

Data Init

Required

Coefficient 7

REF_1100

5.90 RLICONFIG

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

COE08

S9 -Real

Data Init

Required

Coefficient 8

COE09

T1 -Real

Data Init

Required

Coefficient 9

COE10

T2 -Real

Data Init

Required

Coefficient 10

COE11

T3 -Real

Data Init

Required

Coefficient 11

COE12

T4 -Real

Data Init

Required

Coefficient 12

COE13

T5 - Real

Data Init

Required

Coefficient 13

ENBL

Variable

Optional

Enable flag

LD, LP

STAT

Variable

Optional

Status of the RLI card

LP

Note: The slow/fast, raise/lower pulse on/off times for electric drive signals (low byte = off time;
high byte = on time) are in units of 0.1 or 0.004 seconds.
Two ranges of value (0.1 or 0.004 second resolution) are available for the electric drive slow/fast
action pulse on/off values.
For 0.1 second resolution, byte values in the range of 0 to 127 (00 to 7FH) are used. For
example, 03H represents a 0.3 second pulse time (3 x 0.1).
For 0.004 second resolution, byte values in ranges 128 to 255 (80 to FFH) are used to represent
the range 0 to 127. For example, 83H represents a 0.012 second pulse time (3 x 0.004).

REF_1100

401

5.91 RPACNT

5.91 RPACNT
Description
The RPACNT algorithm reads the pulse count from the Ovation Pulse Accumulator card. The
algorithm uses the hardware address in the OUT point to access the Ovation Pulse Accumulator
card.
When IN1 is TRUE, the algorithm reads the pulse count from the card, resets the counter to zero
and stores the pulse counts in OUT. Conversion may be done on the pulse value before the pulse
count is stored in the OUT point. A linear conversion, if chosen, is taken from the CV, 1V and 2V
of the OUT point. For example, consider the case in which the input is a count of contact closures
from a watt hour meter. The number of megawatt hours per pulse can be accounted for in the
coefficients that are calculated as part of the point record. For example, to get the megawatt
hours per hour, the rate would be:

PULSES

MIN

10

KWH
PULSE

MWH

* 60

1000 KWH

MIN

1.8

HR

MWH
HR

The FOUT point contains accumulated pulse count until the reset flag (RSET) is TRUE. If IN1 and
RSET are TRUE, then FOUT contains the pulse count read from the card.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

402

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input, read trigger of the


RPA card (digital)

LD, LP

RSET

Variable

Optional

Input to reset count


(digital)

LD, LP

OUT

Variable

Required

Output value from RPA


card (analog)

LA

FOUT

Variable

Optional

Accumulated count
output value (analog)

LA

REF_1100

5.92 RPAWIDTH

5.92 RPAWIDTH
Description
The RPAWIDTH algorithm reads the pulse width from the Ovation Pulse Accumulator card. (See
Ovation I/O Reference Manual.) The algorithm uses the hardware address in the OUT point to
access the Ovation Pulse Accumulator card. If there is a hardware error, the OUT is set to BAD
quality.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

OUT

REF_1100

LC ALG.
RECORD
FIELD
-

TYPE

REQUIRED/
OPTIONAL

Variable

Required

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Pulse Width output


(analog)

LA

403

5.93 RSRSTATUS

5.93 RSRSTATUS
Description
The RSRSTATUS algorithm performs the following:

Displays the status register and command register for the Ovation Servo Driver (RSR) Card.

Calibrates Channel 1 and Channel 2 of the RSR card using a project-specific graphic
(diagram 8799) instead of using the RSR serial port.

Uploads and downloads configurable parameters used by the RSR card. (See Ovation I/O
Reference Manual.)

If a point assigned to the ENBL input and point is TRUE, then the STAT1, STAT2, and CMD
outputs are updated. If ENBL is FALSE, then the last value of STAT1, STAT2, and CMD is
retained.
Note: Use the RSRSTATUS algorithm only with E or greater level of RSR firmware.
Functional Symbol

Calibration Commands
There are three different types of calibrations that can be done to the valve:

0% or Low Calibration command - moves the actuator until the 0% position is


re-established. The feedback gain is not re-established.

100% or High Calibration command - moves the actuator until the 100% position is
re-established. The feedback gain is not re-established.

Full Calibration command - moves the actuator until both the 0% and 100% positions are
re-established. It also re-establishes the feedback gain.

During the travel sequence, the actuator moves the valve at a programmable rate. While the
Valve Positioner is traveling, the graphic displays and continuously updates the current voltage
value based on the position. There is also a Clear Calibration command that may be used if the
calibration command is no longer desired.
The UTYP parameter can be configured to allow the constant value to be automatically uploaded
after any calibration command.

404

REF_1100

5.93 RSRSTATUS
Upload Command
The upload command is used to retrieve the constant values currently stored in the RSR Card
memory. When the upload command is executed, the X3 value is changed and the RSR Card is
commanded to send the current values stored in its memory to the 32-bit real number fields of the
algorithm record. The standard graphic then displays the values in these selected algorithm
record fields for the user when the upload is finished. Note these values can only be uploaded
when the RSR card is in local or normal mode.
Download Command
The download command is used to update the constant values currently stored in the RSR Card
memory. When the download command is requested, the X3 field is changed, and the values
entered into the graphic are stored in the 32-bit real number fields of the algorithm record. Then
the values in the selected fields of the algorithm record are written to the RSR memory. Note
these values can only be downloaded when the RSR card is in local or normal mode.
The DTYP parameter can be configured to automatically download the constant values when the
RSR card is replaced or reseated in the slot.
Interface Information
The calibration commands are sent to the X3 field in the algorithm record.
C ALIBR ATE COMM AND

REF_1100

COMM AND DESCRIPTION

No Command.

Channel 1 Calibrate 0%.

Channel 1 Calibrate 100%.

Channel 1 Full Calibration.

Clear Calibration Request.

Upload Request.

Download Request.

11

Channel 2 Calibrate 0%

12

Channel 2 Calibrate 100%

13

Channel 2 Full Calibration

15

Channel 1 Normal Mode

16

Channel 1 Local Mode

17

Channel 1 Raise 0.5%

18

Channel 1 Lower 0.5%

19

Channel 2 Normal Mode

20

Channel 2 Local Mode

21

Channel 2 Raise 0.5%

22

Channel 2 Lower 0.5%

24

Display Feedback Voltage

25

Display DAC Setting

405

5.93 RSRSTATUS
As the commands are being executed, messages are displayed on the graphic by Status Value in
the X5 field of the algorithm record.
STATUS

DESCRIPTION
0

No Message.

Calibration in Progress.

Poor Calibration.

Calibration Time-out.

Upload Error.

Download in Progress.

Download Error.

Download Time-out.

Channel 1 Not Ready.

11

Command cannot be processed.

12

Channel 2 Not Ready.

RSR CALIBRATION DIAGRAMS


There is one calibration diagram linked to an RSR module:

Diagram 8799 = Project-specific diagram.

Accessing Diagram 8799


In order to perform tuning calibrations on the RSR module, you need to use a tuning diagram
such as diagram 8799. This diagram is accessed from a custom graphic. You can use the
Ovation Graphics Builder to create code that will call the 8799 calibration diagram.
The following is an example of calling the 8799 diagram from diagram 1000 by using a standard
OL_BUTTON command in Ovation Graphics Builder:
OL_BUTTON 6868 6044 HORZ SQUARED TEXT_LABEL VECTOR 137 438 1 "RSR
TUNING" EXEC_POKE 7 2 6 0 5 \RSRSTAT\ ID \RSRSTAT\ ID 3 83 3 117 8799 20 0 0 0 0
15 \RSR-DMD1\ ID \RSR-POS1\ ID\RSR-INTGV1\ ID \RSR-DMD2\ ID \RSR-POS2\ ID
\RSR-INTGV2\ ID \RSR-STAT1\ ID \RSR-STAT2\ ID \RSR-CMD\ ID \MASTATION1\ ID
\MAMODE1-MODE\ ID \MASTATION2\ ID \MAMODE2-MODE\ ID \RSR-OUT1\ ID
\RSR-OUT2\ ID

* RSRSTAT - RSRSTAT LC point


* RSR-DMD1 - RSR IO point - channel 5
* RSR-POS1 - RSR IO point - channel 1
* RSR-INTGV1 - RSR IO point - channel 3
* RSR-DMD2 - RSR IO point - channel 6
* RSR-POS2 - RSR IO point - channel 2

406

REF_1100

5.93 RSRSTATUS
* RSR-INTGV2 - RSR IO point - channel 4
* RSR-STAT1 - RSRSTAT STAT1 output point
* RSR-STAT2 - RSRSTAT STAT2 output point
* RSR-CMD - RSRSTAT CMD output
* MASTATION1 - MASTATION1 LC point
* MAMODE1-MODE - MAMODE1 - MODE output point
* MASTATION2 - MASTATION2 LC point
* MAMODE2-MODE - MAMODE2 - MODE output point
* RSR-OUT1 - RSRSTAT OUT1 output point
* RSR-OUT2 - RSRSTAT OUT2 output point
Diagram 8799
Diagram 8799 consists of three main sections: Common, Channel 1 and Channel 2:

Common section contains configuration pushbuttons and tuning constant entry fields common
for both channels.

Channel 1 section contains configuration pushbuttons, tuning constant entry fields and
message lines used only for Channel 1.

The Channel 2 section contains configuration pushbuttons, tuning constant entry fields and
message lines used only for Channel 2.

REF_1100

407

5.93 RSRSTATUS
Common Section of 8799 Diagram
Calibration is performed by using command pushbuttons and entering tuning constants in the
entry fields. Some of the pushbuttons are accompanied with rectangular confirmation boxes
when the function is selected, the color changes from black to yellow.
The pushbuttons and entry fields that are used to set configuration values are described in the
following table.
Calibration Fields in Common Section of 8799 Diagram
BUTTON

408

OR

ENTRY FIELD

DESCRIPTION

Upload button

Read data command given to RSR module.

Download button

Write data command given to RSR module.

Clear EFs button

Clear diagram entry field command.

INTEGRAL button

DAC is displayed in RawVoltage and OutputValue for both channels - the


yellow rectangle confirms selection.

LVDT button

Feedback voltage is displayed in RawVoltage and OutputValue for both


channels - the yellow rectangle confirms selection.

PROPOR button

Proportional output option flag to 1 - the yellow rectangle confirms selection.

REGUL button

Proportional output option flag to 0 - the yellow rectangle confirms selection.

REDUND button

Redundant LVDT option flag to 1 - the yellow rectangle confirms selection.

SINGLE button

Redundant LVDT option flag to 0 - the yellow rectangle confirms selection.

INPLACE button

Fail-in-place flag to 1 - the yellow rectangle confirms selection.

TOZERO button

Fail-in-place flag to 0 - the yellow rectangle confirms selection.

CASCADE button

Cascade flag to 1- the yellow rectangle confirms selection.

NORMAL button

Cascade flag to 0 (normal configuration) - the yellow rectangle confirms


selection.

contingencyTime entry field

The time in milliseconds - if the error between target position and actual
position exceeds contingency for this amount of time, then the condition is
reported to the Controller.

posErrorRetreat entry field

The output will not retreat until ABS| posFB - TargetPos| <posErrorRetreat.

retreatRate entry field

Volts per second rate of output retreat.

retreatHoldT entry field

The time in milliseconds - retreat occurs after this time has expired, and
(ABS|Target-Feedback| < posErrorRetreat).

REF_1100

5.93 RSRSTATUS
Channels 1 and 2 of 8799 Diagram
Calibration is performed by using command push buttons and entering tuning constants in the
entry fields. Some of the push buttons are accompanied with rectangular confirmation boxes
when the function is selected the box color is changed. The full, zero hot and top hot calibration
sequences can be started selecting proper push buttons. The calibration sequence can be
stopped at any time. It is not possible to start calibration sequence for both channels
simultaneously. When the calibration of any channel is in progress DOWNLOAD, UPLOAD,
CLEAR EFs, OUTPUT, LVDT push buttons are disabled.
When the calibration is finished, the tuning of the PI position control should be performed. It can
be done in RSR local or normal mode. When local mode is selected the only way to change the
valve position demand is to press UP or DOWN push buttons. Normal mode is selected by
pressing DPU push button and the valve position demand is changed by pressing up/down arrow
push buttons, or entering demand in DEO entry field.
The following push buttons and entry fields are used to set the values of important configuration.
Calibration Fields in Channel Sections of 8799 Diagrams
BUTTON

OR

ENTRY FIELD

DESCRIPTION

0% button

Calibrate zero% - the yellow rectangle confirms selection.

100% button

Calibrate 100% - the yellow rectangle confirms selection.

FULL button

Full Calibration - the yellow rectangle confirms selection.

STOP button

Stop Calibration - the yellow rectangle confirms selection.

UP button

Raise - the yellow rectangle confirms selection.

DOWN button

Lower - the yellow rectangle confirms selection.

DPU button

RSR channel 1(2) to normal mode - the green rectangle confirms selection.

LOC button

RSR channel 1(2) to local mode - the yellow rectangle confirms selection.

AUT button

Mastation channel 1(2) to auto mode - the blue rectangle confirms


selection.

MAN button

Mastation channel 1(2) to manual mode - the red rectangle confirms


selection.

up arrow push button

Raise Mastation channel 1(2) output.

down arrow push button

Lower Mastation channel 1(2) output.

DEO button

Mastation channel 1(2) output digital entry.

piGain entry field

PI Controller gain outside of deadband.

piResetT entry field

PI Controller reset time outside of deadband.

demodGain entry field

The A/D converter gain to achieve a voltage range representing 0 to 100 %.

errorDbS entry field

When the absolute value of the difference between the target position and
the actual position is less than this value, the valve is considered to be
stable.

errorDbF entry field

When the absolute value of the difference between the target position and
the actual position is greater that this value, the valve is considered to be in
motion.

piGainDb entry field

PI Controller gain inside deadband.

REF_1100

409

5.93 RSRSTATUS

BUTTON

OR

ENTRY FIELD

DESCRIPTION

piResetTDb entry field

PI Controller reset time inside deadband.

Outoffset entry field

RSR output offset for the proportional mode.

iLimit entry field

Integration limit - 100% no limit, 0% no integration.

calRateCh1(2) entry field

Automatic calibration demand change rate channel 1(2).

DIRECT entry field

PI mode.

seatLimit entry field

When target valve position is equal to or less than this value, seating action
controls the output.

backSeatLimit entry field

When the target valve position is equal to or greater than this value,
backseating action controls the output.

exitSeatVal entry field

When the RSR is seating the valve, then decides to retreat, this is the
output in mV to which the output goes.

exitBkSeatVal entry field

When the RSR is backseating the valve, then decides to retreat, this is the
output in mV to which the output goes.

Calzero entry field

The converted to decimal hexadecimal A/D converter reading for the 0%


position.

Calhndrd entry field

The converted to decimal hexadecimal A/D converter reading for the 100%
position.

Contingency entry field

The difference between Servo Driver target position and actual


Position.

The following display fields in the bottom of the 8799 diagram are used to display the status and
calibration of the RSR module.
Display Fields in Channel Sections of 8799 Diagrams

410

FIELD

DESCRIPTION

RSR Status

Options are:
LOCAL mode
Normal MANUAL
Normal AUTO

Message line

Options are:
Retreat in progress
Retreat is disabled
Contingency

Calibration status

Options are:
Not in calibration
CAL0 in Progress
CAL100 in Progress
FULL Calibration in Progress
Calibration is Finished.

General Messages

Messages that appear in the bottom of the 8799 diagram.

REF_1100

5.93 RSRSTATUS
Algorithm Record Type = None
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

PCI

X4-Byte

Data Init.

MIN.
POINT
RECORD

Required

157

Tuning Diagram
Number

Required

PCI Card Number

(1 or 2)
HWAD

B2-Integer

Data Init.

Required

Card Hardware
Address

UTYP

X6-Byte

Data Init.

Required

YES

Automatically upload
after a Calibration.
YES (Default)
NO

Data Init.

Required

YES

Automatically
download
YES (Default)
NO

Bit 0

DTYP

X6-Byte
Bit 1

ENBL

Variable

Optional

Enable Flag (digital)

LD,LP

CC

Variable

Optional

Cascade close
command

LD, LP

CCF

Variable

Optional

Cascade close freeze


tracking

LD, LP

CCV

Variable

Optional

Cascade close value

LA

IDMD1

Variable

Optional

Channel 1 demand
input

LA

IDMD2

Variable

Optional

Channel 2 demand
input

LA

STAT1

Variable

Required

RSR Status register


(packed)

LP

STAT2

Variable

Required

RSR Status register 2


(packed)

LP

CMD

Variable

Optional

RSR Command
register (packed)

LP

ODMD1

Variable

Optional

Channel 1 demand
output

LA

ODMD2

Variable

Optional

Channel 2 demand
output

LA

OUT1

Variable

Optional

Channel 1 output value

LA

OUT2

Variable

Optional

Channel 2 output value

LA

REF_1100

411

5.94 RUNAVERAGE

5.94 RUNAVERAGE
Description
The RUNAVERAGE algorithm performs a running average calculation on a number of samples
collected at a sampling interval time. The input (IN1) is sampled periodically as specified by the
user from the Number of Units and Units of Time fields. Any decimal part in the Number of Units
field is ignored. If the time specified is less than the loop time, the input is sampled every loop.
Otherwise, the input is sampled on the first loop after the specified number of time boundaries
have elapsed.
The output, which is calculated every loop, is the average of the last N samples of the input,
where N is 8 or less. Thus, the time period for the average is the product of the sampling interval
time and the number of samples. If the quality of the input is BAD, that value of the input is not
included in the calculation. If the quality of the samples for a given period is BAD, then the output
value remains unchanged, but the quality is set BAD. During initial operation before N samples
exist, the output that is calculated is based on the available samples.
The values of all IN1 samples are checked for invalid real numbers. If an IN1 sample value is
invalid, the stored, internal quality of that IN1 is set to BAD. Only sample values with GOOD,
FAIR, and POOR quality are used to calculate the value of OUT; the quality of OUT is set
according to the rules listed in the Function section of this description.
At any given time, the output is the average of N samples, made up of the most current sample
and the previous N-1 samples. Every sampling time, the oldest sample is discarded and replaced
with a new sample.
Functional Symbol

Algorithm Record Type = LC

412

REF_1100

5.94 RUNAVERAGE

Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

TIME

R1-Real

UNIT

X1-Byte

MIN.
POINT
RECORD

Required

61

Tuning Diagram
Number

Tuning
Constant

Optional

0.0

Number of units

Data Init.

Optional

Units of time

0 = tenths of a second
1 = seconds
2 = minutes
3 = hours
4 = days
NUM

R2-Real

Tuning
Constant

Required

Number of samples to
be averaged (1 through
8)

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function

The quality of the output is as follows:

On the first pass: BAD

If all samples during the period are BAD: BAD

If less than half the samples are GOOD: POOR

If more than half the samples are GOOD: FAIR

If all samples during the period are GOOD: GOOD

REF_1100

413

5.95 RUNTIME

5.95 RUNTIME
Description
The RUNTIME algorithm counts long-lasting service times of devices. This algorithm consists of
two counters; run time (RTIME) and number of starts (NUMST).
Functional Symbol

Algorithm Activation (START)


The algorithm is activated when you set the START input. When this occurs, the algorithm begins
to increment the RTIME counter and also increments the NUMST parameter by 1. The START
input must remain set to activate the algorithm. If the START input is unset, the algorithm will stop
incrementing the RTIME counter.
Reset Counters (TRST and SRST)
You can reset the algorithm through the time reset (TRST) and number of starts reset (SRST)
inputs. Resetting the algorithm through these inputs will set both the RTIME and the NUMST
counters to 0 and qualities to GOOD.
There are several reset options available through the tuning parameters: time reset option
(TROP) and starts reset option (SROP). These options are summarized in the following table:
TUNING

414

N AM E

RESET

0 (default)

RST_ON

xRST input = 1 resets counter.

RST_OFF

xRST input = 0 resets counter.

RST_CH1

xRST input change 0->1 resets counter.

RST_CH0

xRST input change 1->0 resets counter.

RST_CHG

xRST any input change resets counter.

P AR AM ETER V ALUE

SELECTED

REF_1100

5.95 RUNTIME
Run Time (RTIME)
The run time (RTIME) parameter is determined by the difference between the Controller time in
the current loop and the Controller time in the previous loop and added to an internal counter. The
internal counter is a 32-bit integer number. This allows counting up to 2^32 = 4,294,967,296
seconds which is equivalent to 136 years or 1,193,046 hours. For simplicity, the algorithm uses a
maximum of 999,999 hours at which time the counter will not increment any further. The
maximum value is equivalent to more than 100 years. The number of seconds is recalculated to
hours represented by a floating value and is reflected in the RTIME algorithm output.
Number of Starts (NUMST)
The number of starts (NUMST) parameter is determined by the amount of times the START input
transitions from 0 to 1. This counter is reflected in the number of starts (NUMST) output and is
internally stored in the algorithm. The maximum number of starts is 999,999, at which time the
counter will not increment any further.
Splitting time values
The algorithm supports splitting the time represented in RTIME into hours, minutes, and seconds.
Each part is reflected in optional outputs; run hours (RHRS), run minutes (RMIN), and run
seconds (RSEC).
Calculations are performed according to the following equations:
RHRS = int (RTIME / 3600)
RMIN = int ((RTIME mod 3600) / 60)
RSEC = RTIME mod 60
Manually updating counters
A manual update of either the RTIME counter or the NUMST counter can be achieved by
changing either the incremental tuning value for the time parameter (TTIM) or the incremental
tuning value for the number of starts parameter (TNST) respectively. Changing these parameters
will cause the algorithm to add the value entered to the current RTIME or NUMST value. The
algorithm will then zero out each field (TTIM and/or TNST) and update the current incremental
tuning value for time (CTTIM) or current incremental tuning value for number of starts (CTNST)
respectively. The CTTIM and CTNST fields store the user-entered values for future references.
If you want to start the algorithm with either the TTIM or TNST values, you must first reset each
counter to zero out the current RTIME and NUMST counters. Then the TTIM and TNST values
can be entered.
Note: Entering a number less than zero or greater than 999,999 will cause the algorithm to
ignore the value and reset the TTIM and TNST fields to zero.
Reconcile Option (RECOP)
The reconcile option allows you to determine how the algorithm initializes its outputs after a clear
and load of both Controllers at the same time.

REF_1100

415

5.95 RUNTIME
When the reconcile option is off, the algorithm initializes its outputs to 0 and POOR quality after a
clear and load of both Controllers. When the reconcile option is on, the algorithm will initialize its
outputs using the previously reconciled values in the RTIME - R1 and NUMST - G3 fields and set
all outputs to GOOD quality. The initialized values will also be stored in the CTTIM and CTNST
fields for future reference. When the algorithm is started, it begins counting from the initialized
values.
Output Point Quality
If the RECOP option is off, any time a loaded Controller is restarted without an operable partner
drop, the RTIME and NUMST are initialized to 0, and the outputs will be marked with POOR
quality. POOR quality indicates that the value is not trustworthy because the output values will be
initialized to 0. The qualities are changed to GOOD after a reset by the time reset (TRST) and/or
start reset (SRST) inputs. Also, updating the TTIM field will set the RTIME quality to GOOD and
updating the TNST field will set the NUMST quality to GOOD.
SID Storage
In order to assist with graphics programming, all output point SIDs are stored in fields in the
algorithm. This allows the graphic to access multiple SIDs by accessing a single SID (the
algorithm LC record).
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

START

--

Variable

Required

TRST

* X4

Variable

SRST

* X5

RTIME

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

--

Algorithm activation.

LD, LP

Optional

--

Reset run timers.

LD, LP

Variable

Optional

--

Reset number of starts.

LD, LP

R1 - Value
B0 - SID

Variable

Optional

--

Total run time in hours


(floating point).

LA

RHRS

G0 - Value
B1 - SID

Variable

Optional

--

Run time in hours


(integer).

LA

RMIN

G1 - Value
B2 - SID

Variable

Optional

--

Run time in minutes


(integer).

LA

RSEC

G2 - Value
YU - SID

Variable

Optional

--

Run time in seconds


(integer)

LA

NUMST

G3 - Value
B4 - SID

Variable

Optional

--

Number of device
starts.

LA

Inputs:

Outputs:

Params:

416

REF_1100

5.95 RUNTIME

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

TROP

X1

Tuning
Constant

Required

Time Reset Option:


0 (default) - RST_ON
1 - RST_OFF
2 - RST_CH1
3 - RST_CH0
4 - RST_CHG

--

SROP

X2

Tuning
Constant

Required

Starts Reset Option:


0 (default) - RST_ON
1 - RST_OFF
2 - RST_CH1
3 - RST_CH0
4 - RST_CHG

--

RECOP

X3

Data Init.

Required

Reconcile option:
0 = Off
1 = On

--

TTIM

R2

Tuning
Constant

Required

Incremental tuning
value for time (in
hours).

--

TNST

G4

Tuning
Constant

Required

Incremental tuning
value for number of
starts.

--

CTTIM

R3

Alg. Init.

Required

Current incremental
tuning value for time.

--

CTNST

G5

Alg. Init.

Required

Current incremental
tuning value for
number of starts.

--

* The asterisk indicates that this is a command field, not a feedback field. A command field can be used as
a user-interface to the algorithm. It drives the algorithm to perform a function.

REF_1100

417

5.96 RVPSTATUS

5.96 RVPSTATUS
Description
The RVPSTATUS algorithm performs the following:

Displays the status register and command register for the Ovation Valve Positioner (RVP)
Card.

Calibrates the RVP card using a standard graphic (diagram 8719) instead of using the RVP
serial port.

Uploads and downloads configurable parameters used by the RVP card. (See Ovation I/O
Reference Manual.)

If a point assigned to the ENBL input and point is TRUE, then the STAT and CMD outputs are
updated. If ENBL is FALSE, then the last value of STAT and CMD is retained.
Functional Symbol

Calibration Commands
There are four different types of calibrations that can be done to the valve:

0% or Low Calibration command - moves the Valve Positioner until the 0% position is
re-established. The feedback gain is not re-established.

100% or High Calibration command - moves the Valve Positioner until the 100% position is
re-established. The feedback gain is not re-established.

Full Calibration command - moves the Valve Positioner until both the 0% and 100%
positions are re-established. It also re-establishes the feedback gain.

Null-Point Calibration command - moves the Valve Positioner to the electrical null point of
the LVDT. The Null-Point Calibration can be requested at the same time as the Full
Calibration. If this is done, the Positioner moves through the sequences of the full calibration,
but stops at the null point when encountered.

When the calibration command is executed, the controlling MASTATION enters manual mode
and tracks the position demand feedback. During the travel sequence, the Valve Positioner
moves the valve at a programmable rate. While the Valve Positioner is traveling, the graphic
displays and continuously updates the current voltage value based on the position. There is also
a Clear Calibration command that may be used if the calibration command is no longer desired.

418

REF_1100

5.96 RVPSTATUS
Upload Command
The upload command is used to retrieve the constant values currently stored in the RVP Card
memory. When the upload command is executed, the X3 value is changed and the RVP Card is
commanded to send the current values stored in its memory to the 32-bit real number fields of the
algorithm record. The standard graphic then displays the values in these selected algorithm
record fields for the user when the upload is finished. Note these values can only be uploaded
when the RVP card is in local or normal mode.
Download Command
The download command is used to update the constant values currently stored in the RVP Card
memory. When the download command is requested, X3 field is changed, and the values entered
into the graphic are stored in the 32-bit real number fields of the algorithm record. Then the values
in the selected fields of the algorithm record are written to the RVP memory. Note these values
can only be downloaded when the RVP card is in local or normal mode.
Interface Information
The calibration commands are sent to the X3 field in the algorithm record.
C ALIBR ATE COMM AND

COMM AND DESCRIPTION

No Command.

Calibrate 0%.

Calibrate 100%.

Full Calibration.

Go to Null Point Calibration.

Clear Calibration Request.

Upload Request.

Download Request.

As the commands are being executed, messages are displayed on the graphic by Status Value in
the X5 field of the algorithm record.
STATUS

REF_1100

DESCRIPTION
0

No Message.

Calibration in Progress.

Poor Calibration.

Calibration Time-out.

Upload Error.

Download in Progress.

Download Error

Download Time-out

RVP Card Not Ready.

419

5.96 RVPSTATUS
Algorithm Record Type = None
Algorithm Definitions

420

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LUInteger

Data Init.

Required

116

PCI

X4-Byte

Data Init.

Required

HWAD

B2Integer

Data Init.

DESCRIPTION

MIN.
POINT
RECORD

Tuning Diagram
Number

PCI Card Number (1


or 2)

Required

Card Hardware
Address

ENBL

Variable

Optional

Enable Flag (digital)

LD,LP

STAT

Variable

Required

RVP Status register


(packed)

LP

CMD

Variable

Optional

RVP Command
register (packed)

LP

REF_1100

5.97 SATOSP

5.97 SATOSP
Description
The SATOSP algorithm transfers one analog value to a packed point record for use by
programmable controllers.
The analog point record value field is converted to an integer and stored in the packed digital
value field. Conversion is done by rounding off fractional values less than 0.50 to zero and
fractional values greater than or equal to 0.50 to the next highest integer. If the value of the
analog point record is less than the smallest integer (-32767), or greater than the largest integer
(32767), the minimum or maximum integer value is used.
The bit pattern used to store negative numbers is the sign and magnitude method.
If the quality of the analog point record is BAD, or if the value of the analog point is an invalid
number, then the packed point value remains at its last valid value. The quality of the input is not
propagated to the output.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Input (analog)

LA

PACK

Variable

Required

Output (packed)

LP

REF_1100

421

5.98 SELECTOR

5.98 SELECTOR
Description
The SELECTOR algorithm transfers between N analog inputs. For the SELECTOR algorithm, the
output is equal to one of N analog inputs, where N is an integer less than eight. The input
selected is based on a binary address formed by three digital inputs per the table. If address 000
or an address greater than N is selected, the output signal is zero.
Digital Input States
SELECTED
INPUT NO.

DIN1

DIN2

DIN3

None

Invalid Numbers and Quality


The value of the selected input is checked for invalid real numbers. If the input value is invalid, the
output value is invalid and the quality of the output is set to BAD. Otherwise, the quality of the
selected input is propagated to the output.
Functional Symbol

422

REF_1100

5.98 SELECTOR
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init

Required

89

Tuning Diagram
number

NMIN

X1-Byte

Data Init.

Required

Number of inputs

Variable

Optional

Input (analog)

LA

DIN1

Variable

Required

Input (digital); Input


Address 1

LD, LP

DIN2

Variable

Required

Input (digital); Input


Address 2

LD, LP

DIN3

Variable

Required

Input (digital); Input


Address 3

LD, LP

OUT

Variable

Required

Output (analog)

LA

IN1

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN7

REF_1100

423

5.99 SETPOINT

5.99 SETPOINT
Description
The SETPOINT algorithm performs a manual loader function. The algorithm provides an interface
to the Control Builder or Operator Station diagram. Interface to the hard setpoint portion of the
Ovation Loop Interface (LI) card may be initialized. If the LI hardware address is initialized, the
algorithm reads the setpoint stored on the LI setpoint counter to use as its output value. If the LI
or hardware address is not initialized, the algorithm uses the last output value as its output value.
Note: The rate of change is constant in Signal Diagrams regardless of the settings for the
algorithm parameters.
Functional Symbol

The output of this algorithm may be increased and/or decreased by the SLIM station or the
Operator's Soft Station diagram.
It continually checks the Set Point Increase/Decrease function keys from the Operator's Station
for increase/decrease requests for the setpoint output. If requests are received from both the hard
and soft stations at the same time, the station contacts override the Operator's Keyboard keys.
On power-up or reset of the Controller, the output is the initial value of the algorithms output
(default value = 0.0) if the LI is not initialized. Otherwise, the output is the current value stored on
the LI setpoint counter.
If the LI card is selected in the TYPE algorithm field and the Controller is reset, powered-up or
fails, the setpoint is read from the LI card and used initially in the OUT field of the algorithm. This
reports the status of the field device before any action is taken by either the algorithm or the
operator.
The interface keys of the Operator's Keyboard are:

424

KEY

USE

Set Point Increase Function Key (Control


Up Arrow)

Raise the output

Set Point Decrease Function Key (Control


Down Arrow)

Lower the output

REF_1100

5.99 SETPOINT

Note: If the top and bottom scales are equal, the high limit flag is set and the output value is
equal to the top scale.
If the algorithm is told to track and the track input is invalid, the track request is ignored and the
drop is placed into alarm.
If the LI hardware address is initialized, this value is written to the setpoint counter on the
specified card. If the algorithm is operating with an LI, and the LI card is in Local mode, the output
of the algorithm cannot be changed from the Operator Station. In this case, the output of the
algorithm can be changed from the SLIM station only.
If SETPOINT is to write the setpoint value to the LI card, then changes to the setpoint value (that
is, tracking, Control Builder or Operator Station raise/lower requests, and so forth) are
implemented as described previously.
The SETPOINT algorithm monitors the LI card for any raise and lower requests from the SLIM.
Raise/lower requests from the SLIM override any other setpoint change requests received by this
algorithm (that is, tracking, Operator Station raise/lower requests, and so forth). If there are no
SLIM requests, then the setpoint value is changed as described previously. The setpoint value is
only written to the output point.
Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog track point. This algorithm takes the action shown in the following table in response
to the information found in the analog input signal TRIN:
BIT

REF_1100

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Not used

17

Track if lower

Ignored

Not used

18

Track if higher

Ignored

Not used

19

Lower inhibit

Ignored

Not used

20

Raise inhibit

Ignored

Not used

21

Conditional Track

No action

Not used

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

425

5.99 SETPOINT
The high and low limit flags and tracking signals from the algorithm are output to TOUT for
display. If the LI hardware address is initialized, the quality of OUT is BAD if there are any LI
hardware errors. Otherwise, the quality of OUT is GOOD when not tracking or set to the quality of
the track input variable when tracking.
Algorithm Record Type = LC
Algorithm Definitions

426

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DIAG

LU-Integer

Data Init.

Required

TPSC

R2-Real

Tuning
Constant

Required

BTSC

R3-Real

Tuning
Constant

PCNT

X1-Byte

TIME

DESCRIPTION

MIN.
POINT
RECORD

Tuning diagram
number

100.0

Maximum value of the


point

Required

0.0

Minimum value of the


point

Tuning
Constant

Required

Percent change of
output in first four
seconds

X2-Byte

Tuning
Constant

Required

25

Number of seconds
remaining for ramp to
full scale

CARD

X3-Byte

Data Init.

Required

SOFT

Card type:
SOFT = No hardware
interface
RLI = Ovation Loop
Interface card

CNUM

X5-Byte

Data Init

Optional

PCI card number (1,2)

HWAD

B2-Integer

Data Init

Optional

Card Hardware
Address (see page 3)

OUT

Variable

Required

Analog output
variable

LA

TRIN

Variable

Optional

Tracking & limiting


mode signals and
tracking value; analog
input variable

LA

TOUT

Variable

Required

Mode and Status


output signals

LA

REF_1100

5.100 SIMTIME

5.100 SIMTIME
Description
The SIMTIME algorithm is used to set time in the Controller. It is reserved for Emerson use only.

REF_1100

427

5.101 SINE

5.101 SINE
Description
The SINE algorithm performs a mathematical sine function. The SINE algorithm has one input
and one output analog point. Each time the algorithm is executed, if the output is on scan, it is set
to the SINE of the input. The input to this algorithm is in radians. If an input is only available in
degrees, multiply it by 0.01745329 to convert to radians.
Invalid Real Numbers and Quality
Analog input values are checked for invalid real numbers. If the input value is invalid, the value of
the output is invalid and its quality is set to BAD. If the input is valid, the quality of the input is
propagated to the output.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function
OUT = SINE(IN1)

428

REF_1100

5.102 SLCAIN

5.102 SLCAIN
Description
The SLCAIN algorithm reads up to 16 analog values from a Group 1 QLC or Ovation Link
Controller (LC) card (or redundant pair of Group 1 QLC cards).
Functional Symbol

Primary and Secondary QLCs/LCs


The Hardware addresses of the primary and secondary QLC/LC cards are specified by the PHW
and SHW parameters (if no secondary QLC/LC is used, SHW is set to zero).
Digital inputs PSTA and SSTA define whether the points are to be read from the primary or
secondary QLC/LC, as shown below:

If PSTA = TRUE, the points are read from the primary QLC/LC (status of SSTA does not
matter).

If PSTA = FALSE and SSTA = TRUE, the points are read from the secondary QLC.

If PSTA = FALSE and SSTA = FALSE, the point values are not updated and the points are
assigned BAD quality.

If PSTA = FALSE and SSTA is not defined, the point values are not updated and the points
are assigned BAD quality.

If PSTA and SSTA are not defined, the point values are not updated and the points are
assigned BAD quality.

Note: Although both PSTA and SSTA are optional parameters, at least one must be defined for
the points to be updated.
Point Data Formats
The FRMT parameter is used to specify the format of the analog point data to be read from the
QLC/LC registers. The four available formats are as follows:
FRMT *

REF_1100

FORM AT

DESCRIPTION

Integer

Integer value in the range +32767 to -32768. Each point


occupies one data register.

Intel Real

Floating-point real number. Each point occupies two data


registers.

429

5.102 SLCAIN

FRMT *

FORM AT

DESCRIPTION

Intel Real with status

Status word followed by floating-point real number. Each point


occupies three data registers.

Intel Real with quality

Status word followed by floating-point real number. Each point


occupies three data registers.

* When the FRMT = 2, the following bits are placed into the 1W field of the analog point record:
Bit 4 - Undefined
Bits 8 and 9 - Quality
Bit 12 - Limit checking off
Bit 13 - Alarm checking off
When the FRMT = 3, only the quality bits 8 and 9 of the 1W field of the analog point record are updated.
The remaining bits of the 1W field are used for alarm status, operator entry, and Ovation Network status
information. (See Ovation Record Types Reference Manual.)

QLC/LC Data Registers


The point data is retrieved from consecutive QLC/LC data registers, starting at the register
specified by parameter REG1. Depending on the format selected, the total area required for the
16 analog points could be 16, 32, or 48 registers.
The point parameters (OUT1 through OUT16) are associated with consecutive QLC/LC data
registers, even if some points are omitted from the argument list. For example, if REG1 = 4,
FRMT = 1, and point OUT1 is omitted, then OUT2 is read starting at data register 6 (no read is
performed from data registers 4 and 5).
The location from which a given point is read can be calculated using the following formula:
point_address = REG1 + (FRMT + 1) * (point_number - 1)
where:

430

point_address

QLC/LC data register containing the first word of data from the point

point_number

1 for parameter A1, 2 for parameter A2, and so on.

REF_1100

5.102 SLCAIN
Any point which lies (completely or partially) beyond the end of the 2048 QLC/LC data registers is
assigned BAD quality. For example, if REG1 = 2044 and FRMT = 2, only the first point value
(parameter Al) can be obtained.
Analog Point Record Types
If alarm and/or limit checking are to be performed on points read from the QLC/LC, use point
record type Long Analog (LA).
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LUInteger

Data Init

Required

11

Tuning diagram number

FRMT

B0Integer

Data Init.

Required

QLC/LC data format

REG1

B1Integer

Data Init.

Required

First QLC/LC data


register

PHW

B2Integer

Data Init.

Required

Primary QLC hardware


address or LC address
(see page 3)

SHW

YUInteger

Data Init.

Required

Secondary QLC
hardware address or LC
address (see page 3)

CARD

X4-Byte

Data Init.

Required

PCI Card Number (1,2)

TYPE

X1-Byte

Data Init

Required

QLC

Interface Card Type:


QLC
RLC

Variable

Optional

Input from QLC/LC


registers (analog)

LA

PSTA

Variable

Optional

Primary QLC/LC status


input (digital)

LD, LP

SSTA

Variable

Optional

Secondary QLC/LC
status input (digital)

LD, LP

OUT1

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OUT16

REF_1100

431

5.103 SLCAOUT

5.103 SLCAOUT
Description
The SLCAOUT algorithm writes up to 16 analog points to a Group 1 QLC or LC card
(or redundant pair of Group 1 QLC cards).
Functional Symbol

Primary and Secondary QLCs/LCs


The hardware addresses of the primary and secondary QLC/LC cards are specified by the PHW
and SHW parameters (if no secondary QLC/LC is used, SHW is set to zero).
Digital inputs PSTA and SSTA define whether the points are to be written to the primary or
secondary QLC/LC, as shown below:

If PSTA = TRUE, the points are written to the primary QLC/LC (status of SSTA does not
matter).

If PSTA = FALSE and SSTA = TRUE, the points are written to the secondary QLC.

If PSTA = FALSE and SSTA = FALSE, the points are not output.

If PSTA = FALSE and SSTA is not defined, the points are not output.

If PSTA and SSTA are not defined, the points are not output.

Note: Although both PSTA and SSTA are optional parameters, at least one must be defined for
the points to be output.
Point Data Formats
The FRMT parameter is used to specify the format of the analog point data to be written to the
QLC/LC registers. The three available formats are as follows:
FRMT

432

FORM AT

DESCRIPTION

Integer

Integer value in the range +32767 to -32768. Each point occupies


one data register.

Intel Real

Floating-point real number. Each point occupies two data registers.

Intel Real with status

Status word followed by floating-point real number. Each point


occupies three data registers.

REF_1100

5.103 SLCAOUT
Note that depending on the format selected, each point value occupies between 1 and 3 data
registers.
QLC/LC Data Registers
The point data is written to consecutive QLC/LC data registers, starting at the register specified by
parameter REG1. Depending on the format selected, the total area required for the 16 analog
points could be 16, 32, or 48 registers.
The point parameters (A1 through A16) are associated with consecutive QLC/LC data registers,
even if some points are omitted from the argument list. For example, if REG1 = 4, FRMT = 1, and
point A1 is omitted, then A2 is written starting at data register 6 (no data is written to registers 4
and 5).
The location to which a given point is written can be calculated using the following formula:
point_address = REG1 + (FRMT + 1) * (point_number - 1)
where:
point_address

QLC/LC data register containing the first word of data from the point.

point_number

1 for parameter A1, 2 for parameter A2, and so on.

No data is written to registers beyond the valid range (0 through 2047). Points which lie partially
beyond the valid range of registers are written to the extent possible; points which lie completely
beyond the valid range of registers are not written. For example, if REG1 = 2044 and FRMT = 2,
only the first point value (parameter Al) can be written.
Timed-Out Points
The TIME parameter determines what action is taken when a received point (to be written to the
QLC/LC) is timed-out. Depending on the selected TIME setting, the point is either not written to
the QLC/LC, or the last received value is written.
TIME is interpreted as a mask of bits to determine the selected setting for each point, as shown
below:
Point

IN
16

IN
15

IN
14

IN
13

IN
12

IN
11

IN
10

IN
9

IN
8

IN
7

IN
6

IN
5

IN
4

IN
3

IN
2

IN
1

TIME bit

15

14

13

12

11

10

REF_1100

433

5.103 SLCAOUT

For each point, a value of 0 (zero) in the corresponding bit indicates that the point should not
be written if it is timed-out.

For each point, a value of 1(one) in the corresponding bit indicates that the last received value
should be written if the point is timed-out.

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LUInteger

Data Init.

FRMT

B0 Integer

REG1

MIN.
POINT
RECORD

Required

12

Tuning diagram
number

Data Init.

Required

QLC/LC data format

B1 Integer

Data Init.

Required

First QLC/LC data


register

PHW

B2 Integer

Data Init.

Required

Primary QLC/LC
hardware address (see
page 3).

SHW

B3 Integer

Data Init.

Required

Secondary QLC/LC
hardware address (see
page 3).

CARD

X4-Byte

Data Init.

Required

PCI Card Number (1,


2)

TYPE

X1-Byte

Data Init

Required

QLC

Interface Card Type:

QLC or RLC
TIME

Data Init.

Required

Bit map for handling of


timed-out points
(1 = Use last value,
0 = Skip)

Variable

Optional

Output to QLC/LC
registers (analog)

LA

PSTA

Variable

Optional

Primary QLC/LC status


input (digital)

LD, LP

SSTA

Variable

Optional

Secondary QLC/LC
status input (digital)

LD, LP

IN1

B4 Integer

IN16

434

REF_1100

5.104 SLCDIN

5.104 SLCDIN
Description
The SLCDIN algorithm reads up to 16 digital values from a Group 1 QLC or Ovation Link
Controller (LC) card (or redundant pair of Group 1 QLC cards).
Functional Symbol

REF_1100

435

5.104 SLCDIN
Primary and Secondary QLCs/LCs
The Hardware addresses of the primary and secondary QLC cards are specified by the PHW and
SHW parameters (if no secondary QLC is used, SHW is set to zero).
Digital inputs PSTA and SSTA define whether the points are to be read from the primary or
secondary QLC/LC, as shown below:

If PSTA = TRUE, the points are read from the primary QLC/LC (status of SSTA does not
matter).

If PSTA = FALSE and SSTA = TRUE, the points are read from the secondary
QLC/LC.

If PSTA = FALSE and SSTA = FALSE, the point values are not updated and the points are
assigned BAD quality.

If PSTA = FALSE and SSTA is not defined, the point values are not updated and the points
are assigned BAD quality.

If PSTA and SSTA are not defined, the point values are not updated and the points are
assigned BAD quality.

Note: Although both PSTA and SSTA are optional parameters, at least one must be defined for
the points to be updated.
Point Data Format
Each digital point occupies one data register (equivalent to the 1W field of the point data record).
The FRMT parameter is used to specify the format of the Digital point data to be read from the
QLC/LC register. The three available formats are as follows:
The following bits are placed into the 1W field (no other bits cleared) of the digital point record:
FRMT

DESCRIPTION
0

Bit 0 - Digital value


Bits 8 and 9 - Quality
Bit 12 - Limit checking off
Bit 13 - Alarm checking off

Bit 0 - Digital value


Bits 8 and 9 - Quality

Bit 0 - Digital value

The remaining bits of the 1W field are used for alarm status, operator entry, and Data Highway
status information. (See Ovation Record Types Reference Manual.)

436

REF_1100

5.104 SLCDIN
QLC/LC Data Registers
The point data is retrieved from consecutive QLC/LC data registers, starting at the register
specified by parameter REG1. The total area required for the 16 digital points is 16 registers.
The point parameters (OUT1 through OUT16) are associated with consecutive QLC/LC data
registers, even if some points are omitted from the argument list. For example, if REG1 and point
OUT1 is omitted, then OUT2 is read from data register 5 (no read is performed from data register
4).
The location from which a given point is read can be calculated using the following formula:
point_address = REG1 + (point_number - 1)
where:
point_address = QLC/LC data register containing the digital point
point_number = 1 for parameter OUT1, 2 for parameter OUT2, and so on.
Any point which lies beyond the end of the 2048 QLC/LC data registers is assigned BAD quality.
For example, if REG1 =2044, only the first three point values (parameters OUT1, OUT2, and
OUT3) can be obtained.
Digital Point Record Types
If alarm checking is to be performed on digital points read from the QLC/LC, use point record type
Long Digital.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

Required

FRMT

B0 - Integer

Data Init.

Required

13

Tuning Diagram
Number

Point Format

REG1

B1 - Integer

Data Init.

Required

First QLC/LC data


register

PHW

B2 - Integer

Data Init.

Required

Primary QLC/LC
hardware address
(see page 3).

SHW

YU - Integer

Data Init.

Required

Secondary QLC/LC
hardware address
(see page 3).

CARD

X4-Byte

Data Init.

Required

PCI Card Number


(1,2)

TYPE

X1-Byte

Data Init

Required

QLC

Interface Card Type:

MIN.
POINT
RECORD

QLC or RLC

REF_1100

437

5.104 SLCDIN

N AM E

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

PSTA

Variable

SSTA

Variable

OUT1

LC ALG.
RECORD
FIELD

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Input from QLC/LC


registers (digital)

LD

Optional

Primary QLC/LC
status input (digital)

LD, LP

Optional

Secondary QLC/LC
status input (digital)

LD, LP

OUT16

438

REF_1100

5.105 SLCDOUT

5.105 SLCDOUT
Description
The SLCDOUT algorithm writes up to 16 digital points to a Group 1 QLC or Ovation Link
Controller (LC) card (or redundant pair of Group 1 QLC cards).
Functional Symbol

REF_1100

439

5.105 SLCDOUT
Primary and Secondary QLCs/LCs
The hardware addresses of the primary and secondary QLC/LC cards are specified by the PHW
and SHW parameters (if no secondary QLC/LC is used, SHW is set to zero).
Digital inputs PSTA and SSTA define whether the points are to be written to the primary or
secondary QLC/LC, as shown below:

If PSTA = TRUE, the points are written to the primary QLC/LC (status of SSTA does not
matter).

If PSTA = FALSE and SSTA = TRUE, the points are written to the secondary QLC/LC.

If PSTA = FALSE and SSTA = FALSE, the points are not output.

If PSTA = FALSE and SSTA is not defined, the points are not output.

If PSTA and SSTA are not defined, the points are not output.

Note: Although both PSTA and SSTA are optional parameters, at least one must be defined for
the points to be output.
Point Data Format
Each digital point occupies one data register (equivalent to the 1W field of the point data record).
(See Ovation Record Types Reference Manual.)
QLC/LC Data Registers
The point data is written to consecutive QLC/LC data registers, starting at the register specified by
parameter REG1. The total area required for the 16 digital points is 16 registers.
The point parameters (IN1 through IN16) are associated with consecutive QLC/LC data registers,
even if some points are omitted from the argument list. For example, if REG1 = 4 and point IN1 is
omitted, then IN2 is written to data register 5 (no data is written to register 4).
The location to which a given point is written can be calculated using the following formula:
point_address = REG1 + (point_number - 1)
where:
point_address = QLC/LC data register containing the digital point
point_number = 1 for parameter IN1, 2 for parameter IN2, and so on.

440

REF_1100

5.105 SLCDOUT
No data is written to registers beyond the valid range (0 through 2047). For example, if REG1 =
2044, only the first three point values (parameters IN1 through IN3) can be written.
Timed-Out Points
The TIME parameter determines what action is taken when a received point (to be written to the
QLC/LC) is timed-out. Depending on the selected TIME setting, the point is either not written to
the QLC/LC, or the last received value is written.
TIME is interpreted as a mask of bits to determine the selected setting for each point, as shown
below:
Point

IN
16

IN
15

IN
14

IN
13

IN
12

IN
11

IN
10

IN
9

IN
8

IN
7

IN
6

IN
5

IN
4

IN
3

IN
2

IN
1

TIME bit

15

14

13

12

11

10

For each point, a value of 0 (zero) in the corresponding bit indicates that the point should not
be written if it is timed-out.

For each point, a value of 1 (one) in the corresponding bit indicates that the last received
value should be written if the point is timed-out.

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LUInteger

Data Init.

Required

14

Tuning Diagram
Number

REG1

B1 Integer

Data Init.

Required

First1 QLC/LC data


register

PHW

B2 Integer

Data Init.

Required

Primary QLC/LC
hardware address (see
page 3).

SHW

YU Integer

Data Init.

Required

Secondary QLC/LC
hardware address (see
page 3).

CARD

X4-Byte

Data Init.

Required

PCI Card Number (1,2)

TYPE

X1-Byte

Data Init

Required

QLC

Interface Card Type:

QLC or RLC
TIME

REF_1100

B4 Integer

Data Init.

Required

Bit map for handling of


timed-out points (1 =
Use last value, 0 =
Skip)

441

5.105 SLCDOUT

N AM E

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

PSTA

Variable

SSTA

Variable

IN1

LC ALG.
RECORD
FIELD

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Output to QLC/LC
register (digital)

LD

Optional

Primary QLC/LC status


input (digital)

LD, LP

Optional

Secondary QLC/LC
status input (digital)

LD, LP

IN16

442

REF_1100

5.106 SLCPIN

5.106 SLCPIN
Description
The SLCPIN algorithm reads up to 16 packed points from a Group1 QLC card or LC (or
redundant pair of Group 1 QLC cards).
Functional Symbol

Note: For the Windows platform, the parameters OUT10 - OUT16 are represented as OT10 OT16.
Primary and Secondary QLCs/LCs
The hardware addresses of the primary and secondary QLC/LC cards are specified by the PHW
and SHW parameters (if no secondary QLC/LC is used, SHW is set to zero).
Digital inputs PSTA and SSTA define whether the points are to be read from the primary or
secondary QLC/LC, as shown below:

If PSTA = TRUE, the points are read from the primary QLC/LC (status of SSTA does not
matter).

If PSTA = FALSE and SSTA = TRUE, the points are read from the secondary QLC/LC.

If PSTA = FALSE and SSTA = FALSE, the point values are not updated.

If PSTA = FALSE and SSTA is not defined, the point values are not updated.

If PSTA and SSTA are not defined, the point values are not updated.

Note: Although both PSTA and SSTA are optional parameters, at least one must be defined for
the points to be updated.

REF_1100

443

5.106 SLCPIN
Data Format
Each packed point value occupies one QLC/LC data register. For packed points, the value is
stored in the A2 field of the LP point data record. See Ovation Record Types Reference Manual.)
QLC/LC Data Registers
The point data is retrieved from consecutive QLC/LC data registers, starting at the register
specified by parameter REG1. The total area required for the 16 packed point values is 16
registers.
The point parameters (OUT1 through OUT16) are associated with consecutive QLC/LC data
registers. For example, if REG1 = 4, the value of OUT1 is read from register 4, OUT2 is read from
register 5, and so on. These point parameters are required and may not be omitted from the
argument list, regardless of the number of points which are actually used by the application.
The location from which a given point is read can be calculated using the following formula:
point_address = REG1 + (point_number - 1)
where:
point_address = QLC/LC data register containing the packed value
point_number = 1 for parameter OUT1, 2 for parameter OUT2, and so on.
Any value which lies beyond the end of the 2048 QLC data registers or 4096 LC data register is
not read. For example, if REG1 = 2044, only the first three point values (parameters OUT1,
OUT2, and OUT3) can be obtained.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

REG1

B1 - Integer

PHW

MIN.
POINT
RECORD

Required

13

Tuning Diagram
Number

Data Init.

Required

First QLC data


register

B2 - Integer

Data Init.

Required

Primary QLC DIOB


address or LC
address

SHW

YU - Integer

Data Init.

Required

Secondary QLC
DIOB address or LC
address

CARD

X4 - Byte

Data Init.

Required

PCI Card Number


(1,2)

TYPE

X1 - Byte

Data Init.

Required

QLC

Interface Card Type.

QLC or RLC

444

REF_1100

5.106 SLCPIN

N AM E

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

PSTA

Variable

SSTA

Variable

OUT1

LC ALG.
RECORD
FIELD

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Input from QLC/LC


register (packed)

LP

Optional

Primary QLC/LC
status input (digital)

LD, LP

Optional

Secondary QLC/LC
status input (digital)

LD, LP

OUT16

REF_1100

445

5.107 SLCPOUT

5.107 SLCPOUT
Description
The SLCPOUT algorithm writes up to 16 packed points to a Group 1 QLC card or LC (or
redundant pair of Group 1 QLC cards).
Functional Symbol

446

REF_1100

5.107 SLCPOUT
Primary and Secondary QLCs/LCs
The hardware addresses of the primary and secondary QLC/LC cards are specified by the PHW
and SHW parameters (if no secondary QLC/LC is used, SHW is set to zero).
Digital inputs PSTA and SSTA define whether the points are to be written to the primary or
secondary QLC/LC, as shown below:

If PSTA = TRUE, the points are written to the primary QLC/LC (status of SSTA does not
matter).

If PSTA = FALSE and SSTA = TRUE, the points are written to the secondary QLC/LC.

If PSTA = FALSE and SSTA = FALSE, the points are not output.

If PSTA = FALSE and SSTA is not defined, the points are not output.

If PSTA and SSTA are not defined, the points are not output.

Note: Although both PSTA and SSTA are optional parameters, at least one must be defined for
the points to be output.
Data Format
Each packed group point value occupies one QLC/LC data register.
For packed points, the value is obtained from the A2 field of the LP point data record. (See
Ovation Record Types Reference Manual.)
QLC/LC Data Registers
The point data is written to consecutive QLC/LC data registers, starting at the register specified by
parameter REG1. The total area required for the 16 packed point values is 16 registers.
The point parameters (IN1 through IN16) are associated with consecutive QLC/LC data registers.
For example, if REG1 = 4, the value of IN1 is written to register 4, IN2 is written to register 5, and
so on. These point parameters are required and may not be omitted from the argument list,
regardless of the number of points which are actually used by the application.
The location to which a given point is written can be calculated using the following formula:
point_address = REG1 + (point_number - 1)
where:
point_address = QLC/LC data register containing the packed group or holding register value
point_number = 1 for parameter IN1, 2 for parameter IN2, and so on.
No data is written to registers beyond the valid range (0 through 2047 for QLC and 0-4096 for
LC). For example, if REG1 = 2044, only the first three point values (parameters IN1 through IN3)
can be written.

REF_1100

447

5.107 SLCPOUT
Timed-Out Points
The TIME parameter determines what action is taken when a received point (to be written to the
QLC/LC) is timed-out. Depending on the selected TIME setting, the point is either not written to
the QLC/LC, or the last received value is written.
TIME is interpreted as a mask of bits to determine the selected setting for each point, as shown
below:
Point

IN
16

IN
15

IN
14

IN
13

IN
12

IN
11

IN
10

IN
9

IN
8

IN
7

IN
6

IN
5

IN
4

IN
3

IN
2

IN
1

TIME bit

15

14

13

12

11

10

For each point, a value of 0 (zero) in the corresponding bit indicates that the point should not
be written if it is timed-out.

For each point, a value of 1 (one) in the corresponding bit indicates that the last received
value should be written if the point is timed-out.

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init

Required

14

Tuning diagram
number

REG1

B1-Integer

Data Init.

Required

First QLC/LC data


register

PHW

B2-Integer

Data Init.

Required

Primary QLC/LC
address

SHW

YU- Integer

Data Init.

Required

Secondary QLC/LC
address

CARD

X4 - Byte

Data Init.

Required

PCI Card Number (1,


2)

TYPE

X1 - Byte

Data Init.

Required

QLC

Interface Card Type.


QLC
RLC

TIME

B4 - Integer

Data Init.

Required

Bit map for handling of


timed-out points (1 =
Use last value, 0 =
Skip)

Variable

Optional

IN1

Output to QLC/LC
register (packed)

MIN.
POINT
RECORD

LP

IN16

448

REF_1100

5.107 SLCPOUT

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

PSTA

Variable

Optional

Primary QLC/LC status


input (digital)

LD, LP

SSTA

Variable

Optional

Secondary QLC/LC
status input (digital)

LD, LP

REF_1100

449

5.108 SLCSTATUS

5.108 SLCSTATUS
Description
The SLCSTATUS algorithm reads hardware and user application status information from a Group
1 QLC or Ovation Link Controller (LC) card (or redundant pair of Group 1 QLC cards). The status
information is placed in packed group points.
Functional Symbol

Primary and Secondary QLCs/LCs


The hardware addresses of the primary and secondary QLC/LC cards are specified by the PHW
and SHW parameters.
An additional parameter is also provided to indicate whether both QLC/LC are present in the drop.
Bits 0 and 1 of the AVBL parameter are used for the primary and secondary QLC/LC,
respectively. If the bit is set to 0, then that QLC/LC card is not present. If the bit is set to 1, then
that QLC/LC card is present.
QLC/LC Data Registers
The application status information is retrieved from four consecutive QLC/LC data registers,
starting at the register specified by parameter REG1. The integer values read from these
locations are stored in the user-initialized packed (LP) points, as follows:

450

DATA REGISTER

LP POINTS

REG1

PFID/SFID

REG1 + 1

PPR1/SPR1

REG1 + 2

PPR2/SPR2

REG1 + 3

PAUX/SAUX

REF_1100

5.108 SLCSTATUS

The fault ID obtained from REG1 (PFID or SFID) is also used by SLCSTATUS to place the drop
into QLC/LC fault. If this value is non-zero, a fault is reported with the following values:
Fault Code = 129
Fault ID = PFID/SFID
Fault Parameter 1 = PPR1/SPRl
Fault Parameter 2 = PPR2/SPR2
Note: Fault Code 129 is reported for either the primary or secondary QLC/LC. The Fault ID or
Fault Parameter(s) must be appropriately defined to indicate which QLC/LC is in fault.
The PAUX/SAUX parameters may be used to define additional information for use by the
application.
QLC Hardware Status Information
QLC hardware status information is placed in the PSTA and SSTA variables (for the primary and
secondary QLCs, respectively). The bits in these parameters are defined as follows:
BIT

DEFINITION
0

Watchdog timer:
0 = Timed-out
l = Not timed-out

SBX module:
0 = Module is attached
1 = Module is not attached

DRAM parity:
0 = No parity error
1 = Parity error

Configuration switch 6 setting:


0 = QLC boot from external disk
1 = QLC boot from flash memory

Configuration switch 5 setting:


0 = 80C187 installed
1 = 80C187 not installed

Configuration switch 4 setting (Baud rate for communication with external personal
computer)

Configuration switch 3 setting. (Baud rate for communication with external personal
computer)

Configuration switch 2 setting (user defined)

8 - 15

REF_1100

Undefined

451

5.108 SLCSTATUS

Note: The term 'configuration switch' refers to QLC DIP switch SW3. The switch settings are
defined as 0 = ON = closed; 1 = OFF = open.
The watchdog timer must be reset by the user application. Otherwise, bit 0 of PSTA/SSTA is
always = 0.
LC Hardware Status Information
LC Hardware Status information is placed in the PSTA and STA variables (for the primary and
secondary LCs, respectively). The bits in these parameters are defined as follows:
BIT

DEFINITION
0

Watchdog Timer:
0 - Timed-Out
1 - Not Timed-out

1-2

Personality Module Type:


0 - RS - 232 Applications Port
1 - RS - 485 Full Duplex Applications Port

Boot up Serial Link Controller from:


0 - External PC via Local Serial Port
1 Internal Flash Memory

BAUD RATE on Serial Port:


0 - Use 9600 BAUD RATE
1 - Use 19200 BAUD RATE

6-15

Undefined

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU - Integer

Data Init

Required

15

Tuning diagram number

REG1

B0 - Integer

Data Init.

Required

First QLC/LC status


register

AVBL

B1 - Integer

Data Init.

Required

Bit mask for available


QLCs/LCs

PHW

B2 - Integer

Data Init.

Required

Primary QLC/ LC
hardware

SHW

YU - Integer

Data Init.

Required

Secondary QLC/ LC
hardware

CARD

X4 - Byte

Data Init.

Required

PCI Card Number (1,2)

Variable

Required

Primary QLC/ LC fault ID


(packed)

PFID

452

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

LP

REF_1100

5.108 SLCSTATUS

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

PPR1

Variable

Required

Primary QLC/ LC fault


parameter 1 (packed)

LP

PPR2

Variable

Required

Primary QLC/ LC fault


parameter 2 (packed)

LP

PAUX

Variable

Required

Primary QLC/ LC
auxiliary fault information
(packed)

LP

PSTA

Variable

Required

Primary QLC/ LC
hardware status
information (packed)

LP

SFID

Variable

Required

Secondary QLC/ LC fault


ID (packed)

LP

SPR1

Variable

Required

Secondary QLC/ LC fault


parameter 1(packed)

LP

SPR2

Variable

Required

Secondary QLC/ LC fault


parameter 2 (packed)

LP

SAUX

Variable

Required

Secondary QLC/ LC
auxiliary fault information
(packed)

LP

SSTA

Variable

Required

Secondary QLC/ LC
hardware status
information (packed)

LP

REF_1100

453

5.109 SMOOTH

5.109 SMOOTH
Description
This algorithm smooths an analog input value. Smoothing of an analog input (sometimes
referred to as digital filtering) consists of giving the most weight to the most recent sample and the
diminishing weight to all preceding readings. The relative weight given to the most recent value is
determined by the smoothing time constant specified for input filtering. The input (IN1) is sampled
each loop. If the smoothing time constant is less than or equal to zero, the output is equal to the
input value. If the smoothing time constant is less than zero, the quality of the output is set to
BAD.
The value of IN1 is checked for an invalid real number. If the calculated value of the output is
invalid, the quality of OUT is set to BAD; otherwise, the quality of IN1 is propagated to the output.
Note: Algorithm record fields that contain real number values are not updated if the new value is
an invalid real number.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

* SMTH

R1-Real

MIN.
POINT
RECORD

Required

67

Tuning Diagram
Number

Selectable

Required

0.0

Smoothing time
constant in seconds

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

454

REF_1100

5.109 SMOOTH
Function
OUT = (alpha x IN1) + (beta x oldout)
where:
(- loop time/SMTH)

alpha = 1 - E

(- loop time/SMTH)

beta = E

loop time = sampling time (loop time)


oldout = locally retained, real variable

REF_1100

455

5.110 SOFTSOE

5.110 SOFTSOE
Description
The SOFTSOE algorithm allows a Sequence of Events (SOE) to be generated by placing an
algorithm on a control sheet. Prior to the release of the SOFTSOE algorithm, an SOE event could
only be generated by a Sequence of Events hardware module. A sequence of events hardware
module is not required to use the SOFTSOE algorithm.
The SOE events generated by the SOFTSOE algorithm are identical to any hardware SOE events
and are stored in the same history, combined on the same reports, and so forth.
Note: Even though the resolution of events that are generated using the SOFTSOE algorithm is
to the nearest one millisecond, the accuracy is only as good as the control task period in which
the algorithm executes. SOFTSOE is designed to generate an SOE event based on the time the
algorithm samples the trigger point. This is only accurate to the period of the control task, which
could be significantly different from the time when the trigger point actually changed state. That
is, the time tag on the SOE event only reflects the time (to the nearest millisecond) when the
algorithm sampled the input.
Functional Symbol

456

REF_1100

5.110 SOFTSOE
SOE Event Trigger
The state of an input digital point triggers the SOE event. The event trigger state is user
configurable. Available options are rising edge, falling edge, rising or falling edge (both), or time
change.
Note: The point connected to the TRIG input must be a digital point; it cannot be a bit of a
packed point.
The SOE Event Trigger point should not have the SOE point flag enabled in its definition. If the
SOE point flag is enabled, it uses one of the available 1,024 SOE point slots per Controller. These
slots are typically used for hardware SOE points only. However, if your system uses a Solaris
historian, the SOE point flag must be enabled due to the way it is designed to handle SOE points.
Although the system does not prevent it, you should not use the same digital point in more than
one SOFTSOE algorithm since this is a redundant configuration. It is also redundant to connect
hardware SOE points to SOFTSOE algorithms.
Event Time Tagging
The time that is assigned to the SOE event can be either of the following:

the current system time at the time the associated digital point changes to the triggering state.

an optional external event time provided to the algorithm of which the user provides the
format (see External Time Formats).

U8 and U9 fields of deluxe records. This is useful for third-party links.

If you cannot guarantee that the change of trigger value and related external time value are
delivered to the algorithm at the same execution loop, the tunable parameters TMDLY and VDLY
can be used to set the maximum allowed delay between the trigger change and the external time
value change.
When a trigger value changes, but the time value does not change at the same execution loop,
the algorithm waits. The VDLY parameter specifies how long to wait for a change of time value. If
the time value changes within this time, an SOE event is generated with the new time value. If the
time value does not change before this time passes or before the trigger value changes once
more, the action taken depends on the NOTME parameter.
The NOTME parameter defines the action taken when a trigger value changes, but a relevant
change of external time value is not observed. Depending on this parameter, the algorithm can do
one of the following:

Send no SOE events.

Send an SOE event with the current system time.

Send an SOE event with the last received external time value.

Conversely, when the external time value changes, but the trigger value does not change at the
same execution cycle, the algorithm waits. The TMDLY parameter specifies how long to wait for a
change of triggering value. If the trigger value changes within this time, the SOE event is
immediately generated with the previously received time value. If the trigger value does not
change within this time, the algorithm waits for another change of time value before generating an
SOE event.

REF_1100

457

5.110 SOFTSOE
The TMCHG parameter tells whether the external time value changes every time the trigger value
changes or only when new SOE events are triggered. This information allows the algorithm to
associate changes of the external time value with proper changes of the trigger value.
The time change option is useful for external events (received from third-party systems) which do
not have an associated digital value, but only have the time when a particular event occurred. In
this configuration, the time used for tagging the events cannot be the current system time.
When the external time value is passed to the algorithm using two or more points, the algorithm
assumes that the entire time value changes whenever any of those points change. The algorithm
cannot detect when one of those points was already updated while the other still has the old
value. Therefore, if two or more points are used for the external time value, it should be
guaranteed that either both are delivered to the algorithm at the same time, or that both are
delivered before or at the same time as the triggering value.
Algorithm Internal Event Buffer
Whenever a new SOE event is generated, the SOFTSOE algorithm tries to immediately send the
event message to the SOE subsystem. If it is not possible to send the message (because the
SOE subsystem is too busy processing hardware or software SOE events, or the historian is
temporarily not available), the algorithm stores the event in its internal buffer.
The events stored in the internal buffer are sent to SOE in subsequent algorithm executions, as
soon as there is enough space for them in the software SOE queue. However, the SOFTSOE
algorithm never sends more than three buffered messages in one execution cycle.
The Number of Pending Events (G0) field in the LC record indicates the number of events that are
currently stored in the internal buffer, pending to be sent to the SOE. This number does not
include possible messages already inserted in the queue, waiting to be processed by the SOE
subsystem.
If for some reason the algorithm internal event buffer becomes full before the pending events can
be transferred to the SOE, and there is no place in it for the newly generated event, the event is
lost and the algorithm sets the optional ERR output to true for one execution cycle.
Optional ENBL Input
You can use the optional ENBL input to control the operation of the algorithm. The algorithm only
generates SOE events when the ENBL input is true. If the ENBL input is not connected, the
algorithm will always be enabled and generate events.
External Time Formats
As an option, the timestamp that is stored in the resulting SOE event can be input externally. You
select one of the available formats of the time values passed to the algorithm.
The timestamp in SOE messages is actually made of the seconds and nanoseconds fields, even
though SOE information is stored in the history with microsecond resolution.
Seconds and Microseconds Format
This format presents the timestamp information in two parts -- seconds and microseconds.

458

REF_1100

5.110 SOFTSOE

Timestamp
The timestamp is built using the following scheme:
Event timestamp = Seconds [S] + Microseconds x 1000 [nS]
Seconds
The "seconds" part is represented as the number of full seconds since January 1, 1970. You
cannot pass this value with one packed or analog point because it has a wider range than can be
precisely represented by those point types.
You can utilize either two packed (LP/DP) or analog (LA/DA) points or one packed digital (PD)
point for the "seconds" part. When using two packed points, the first contains Low Order Word
(bits 0 - 15) and the second contains High Order Word (bits 16 - 31) of the value.
Two points used for seconds
I N P U T N AM E

FUNCTION

TSEC1 (LP/DP, LA/DA)

Seconds -- bits 0 - 15

TSEC2 (LP/DP, LA/DA)

Seconds -- bits 16 - 31

The algorithm calculates the seconds field as follows:


Seconds = TSEC1 + 65536 x TSEC2
One point used for seconds
I N P U T N AM E

FUNCTION

TSEC1 (PD)

Seconds

The algorithm calculates the seconds field as follows:


Seconds = TSEC1
Microseconds
The "microseconds" part specifies the number of microseconds in the specified second when the
event occurred.
As with seconds, this value can either be passed to the SOFTSOE algorithm using two packed
(LP/DP) or analog (LA/DA) points or one packed digital (PD) point.
Two points used for microseconds
I N P U T N AM E

FUNCTION

ETIM1 (LP/DP, LA/DA)

Microseconds -- bits 0 - 15

ETIM2 (LP/DP, LA/DA)

Microseconds -- bits 16 - 31

The algorithm calculates the microseconds field as follows:


Microseconds = ETIM1 + 65536 x ETIM2

REF_1100

459

5.110 SOFTSOE
One point used for microseconds
I N P U T N AM E

FUNCTION

ETIM1 (PD)

Microseconds

The algorithm calculates the microseconds field as follows:


Microseconds = ETIM1

Seconds and Milliseconds format


This format presents the timestamp information in two parts - seconds and milliseconds.
Timestamp
The timestamp is built using the following scheme:
Event timestamp = Seconds [S] + Milliseconds x 1000000 [nS]
Seconds
The "seconds" part is represented as the number of full seconds since January 1, 1970.
You can utilize either two packed (LP/DP) or analog (LA/DA) points or one packed digital (PD)
point for the "seconds" part. When using two packed points, the first contains Low Order Word
(bits 0 - 15) and the second contains High Order Word (bits 16 - 31) of the value.
Two points used for seconds
I N P U T N AM E

FUNCTION

TSEC1 (LP/DP, LA/DA)

Seconds -- bits 0 - 15

TSEC2 (LP/DP, LA/DA)

Seconds -- bits 16 - 31

The algorithm calculates the seconds field as follows:


Seconds = TSEC1 + 65536 x TSEC2
One point used for seconds
I N P U T N AM E

FUNCTION

TSEC1 (PD)

Seconds

The algorithm calculates the seconds field as follows:


Seconds = TSEC1

460

REF_1100

5.110 SOFTSOE
Milliseconds
The "milliseconds" part specifies the number of milliseconds in the specified second when the
event occurred.
One packed (LP or DP) or packed digital (PD) point is used for the "milliseconds" part.
Input point functions
I N P U T N AM E

FUNCTION

ETIM1 (LP/DP, LA/DA, PD)

Milliseconds

The algorithm calculates the milliseconds field as follows:


Milliseconds = ETIM1

Milliseconds of Hour Format


This format presents the timestamp information as a single value -- the total number of
milliseconds since the last full hour. A packed digital point is required.
The time provided to the algorithm is relative and can be definitely interpreted only within a
specified period of time. This puts several constraints on the mechanism of generating and
passing the time value to the algorithm:

It must be guaranteed that every timestamp is transferred from the third-party system to the
Ovation system and processed by the SOFTSOE algorithm in less than an hour from the
moment when it was generated. If a time value older than 59 minutes and 55 seconds is
received, it is interpreted incorrectly and an invalid timestamp is generated.

The source of time must be synchronized with the Ovation system. If a time value more than
four seconds in the future is received, it is interpreted incorrectly and an invalid timestamp is
generated.

This format should be avoided when an SOE event is triggered by a change of time value. If
two consecutive events are received by the algorithm with the exact one hour interval
between timestamps, the algorithm is unable to detect a change of time, and the SOE event
is not generated.

Input point functions


I N P U T N AM E

FUNCTION

ETIM1 (PD)

Milliseconds in an hour

Timestamp
The timestamp is built using the following scheme:
Timestamp = Seconds [S] + Milliseconds x 1000000 [nS]

REF_1100

461

5.110 SOFTSOE
Seconds
The algorithm calculates the seconds field as follows:
Calculate time of last full hour.
Full Hour Seconds = Current Seconds - (Current Seconds modulo 3600)
Add received time value (seconds).
Seconds = Full Hour Seconds + (ETIM1 div 1000)
Adjust if the event occurred in the previous full hour.
if Seconds >= Current Seconds + 5
Seconds = Seconds - 60
Adjust if the event has a timestamp in the future - in the next full hour. This can only occur
when the source of time is not accurately synchronized with Ovation.
else if Seconds < Current Seconds - 3595
Seconds = Seconds + 60
Milliseconds
The algorithm calculates the milliseconds field as follows:
Milliseconds = (ETIM1 modulo 1000)

Milliseconds of Minute Format


This format presents the timestamp information as a single value - the total number of
milliseconds since the last full minute.
This is a relative format of time value. The following constraints apply:

462

It must be guaranteed that every timestamp is transferred from the third-party system to the
Ovation system and processed by the SOFTSOE algorithm in less than 55 seconds from the
moment when it was generated. If a time value older than 55 seconds is received, it is
interpreted incorrectly and an invalid timestamp is generated.

The source of time must be synchronized with the Ovation system. If a time value more than
four seconds in the future is received, it is interpreted incorrectly and an invalid timestamp is
generated.

You should avoid this format when an SOE event is triggered by a change of time value. If
two consecutive events are received by the algorithm with the exact one minute interval
between timestamps, the algorithm is unable to detect a change of time and the SOE event is
not generated.

REF_1100

5.110 SOFTSOE

Input point functions


I N P U T N AM E

FUNCTION

ETIM1 (LP, LA, PD)

Milliseconds in a minute

Timestamp
The timestamp is built using the following scheme:
Timestamp = Seconds [S] + Milliseconds x 1000000 [nS]
Seconds
The algorithm calculates the seconds field as follows:
Calculate time of last full minute.
Full Minute Seconds = Current Seconds - (Current Seconds modulo 60)
Add received time value (seconds).
Seconds = Full Minute Seconds + (ETIM1 div 1000)
Adjust if the event occurred in the previous full minute.
if Seconds >= Current Seconds + 5
Seconds = Seconds - 60
Adjust if the event has a timestamp in the future - in the next full minute. This can only occur
when the source of time is not accurately synchronized with Ovation.
else if Seconds < Current Seconds - 55
Seconds = Seconds + 60
Milliseconds
The algorithm calculates the milliseconds field as follows:
Milliseconds = (ETIM1 modulo 1000)

Deluxe Records Time of Scan


This format is supported for Ovation deluxe records only. The Ovation deluxe records support the
U8 and U9 time scan fields. These fields are designed to hold seconds and nanoseconds
respectively. Third-party interfaces typically use these fields to store the time when the point was
processed.
This format also allows the U8 and U9 to be used for the SOE event timestamp.
The timestamp is built using the following scheme:
Seconds = U8
Nanoseconds = U9
Event timestamp = Seconds [S] + Nanoseconds [nS]

REF_1100

463

5.110 SOFTSOE
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

TRIG

--

Variable

Required

--

SOE trigger input

LD

ENBL

--

Variable

Optional

--

Enable input

LD, LP

TSEC1

--

Variable

Optional

--

External seconds

PD

External seconds (bits 0 15)

LP, LA

TSEC2

--

Variable

Optional

--

External seconds (bits 16 32)

LP, LA

ETIM1

--

Variable

Optional

--

External microseconds

PD

External microseconds
(bits 0 - 15)

LP, LA

External milliseconds

PD, LP,
LA

ETIM2

--

Variable

Optional

--

External microseconds (bits


16 - 32)

LP, LA

ERR

--

Variable

Optional

--

Buffer full error output

LD

Data Init

Required

Event trigger type:

ETYPE

X1 - byte

--

00 = Rising edge
01 = Falling edge
02 = Both
03 = Time change
TSFMT

X2 - byte

Data Init

Required

--

Time stamp format:


0 = Use current system
time
1 = Deluxe record U8/U9
2 = Seconds +
Microseconds
3 = Seconds + Milliseconds
4 = Milliseconds in hour
5 = Milliseconds in minute

464

TMDLY

X3 - byte

Tuning
Constant

Required

Maximum delay between


timestamp change and
value change in loops

--

VDLY

X4 - byte

Tuning
Constant

Required

Maximum delay between


value change and
timestamp change in loops

--

REF_1100

5.110 SOFTSOE

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

NOTME

X5 - byte

Tuning
Constant

Required

DEFAULT
VALUE
0

DESCRIPTION

Action when value changes


without timestamp change:

MIN.
POINT
REC.
--

0 = Send no event
1 = Send event with current
system time
2 = Send event with last
timestamp
TMCHG

X6 - byte

Tuning
Constant

Required

Change of time expected:

--

0 = On every change of
value
1 = When new event is to
be generated

PDEVT

REF_1100

G0 integer

Alg. Init

N/A

Number of pending events

--

465

5.111 SPTOSA

5.111 SPTOSA
Description
The SPTOSA algorithm transfers a packed point record into an analog point record.
The packed digital value field is converted to a whole (real) number (for example, 4.0) and stored
in the analog point value field.
If Bit 15 is a zero, a positive number results. If Bit 15 is a one, a negative number results. The bit
pattern for each packed word produces a real number between -32767 and +32767. The method
for converting bit patterns into negative numbers is the sign and magnitude method.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

* PACK

Variable

Required

Input (packed)

LP

OUT

Variable

Required

Output (analog)

LA

* Parameter names may vary depending on software release.

466

REF_1100

5.112 SQUAREROOT

5.112 SQUAREROOT
Description
The SQUAREROOT algorithm multiplies the analog input with an internal gain, adds a bias and
then takes the square root.
Note: If the algorithm receives an invalid value as an input, or calculates an invalid value as the
output, the drop is placed into alarm.
Functional Symbol

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog track point. This algorithm takes the following action in response to the information
found in the analog input signal TRIN:
BIT

REF_1100

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

No action

Passed through**

20

Raise inhibit

No action

Passed through**

21

Conditional Track

Implemented

Passed through***

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

467

5.112 SQUAREROOT

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the
definitions given in Setting Tracking Signals (see page 16).
*** If the algorithm is being told to track, then the Conditional track bit is ignored. Otherwise, the
value of the conditional track bit is transferred to all output track points. If the Conditional Track
bit is set in the track input point, the analog value of all output track points is calculated based on
the analog value of the track input point.

The high and low limit flags and the tracking signals from the algorithm are output to TOUT to be
used for display and by an upstream algorithm. If the output value is invalid, the quality of OUT is
set to BAD. Otherwise, the quality of OUT is set to the quality of the input when not in tracking
mode. When tracking, the quality is set to the quality of the track input variable.
Note: If the algorithm generates an invalid track output value, the IN1 input value is used as the
track output, unless it is invalid. The track output value is not updated if both the calculated track
output and IN1 input values are invalid.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init.

Required

77

Tuning Diagram
Number

IN1G

R1-Real

Tuning
Constant

Required

1.0

Gain on input. The gain


on the input should
never be initialized to
zero; if it is, the drop is
placed into alarm.

R2-Real

Tuning
Constant

Required

0.0

Bias on input

TPSC

R3-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

BTSC

R4-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point

R5-Real

Tuning
Constant

Required

2.5

Track ramp rate (units


per second)

(GAIN)

IN1B
(BIAS)

TRAT

468

IN1

Variable

Required

Analog input

LA

TOUT

Variable

Required

Track output value,


mode and status signal
for Input 1 variable

LA

OUT

Variable

Required

Analog output variable

LA

REF_1100

5.112 SQUAREROOT

N AM E

TRIN

LC ALG.
RECORD
FIELD
-

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

DEFAULT
VALUE
-

DESCRIPTION

MIN.
POINT
RECORD

Tracking and limiting


mode signals and
tracking value; analog
input variable

LA

Function
IN1GB = (IN1 x IN1 GAIN) + IN1 BIAS
IF IN1GB > 0 THEN
OUT = SQUARE ROOT OF IN1GB
ELSE
OUT = 0
IF OUT >= TPSC THEN
OUT = TPSC
ELSE
IF OUT <= BTSC THEN
OUT = BTSC

REF_1100

469

5.113 SSLT

5.113 SSLT
Description
SSLT calculates Entropy (S) of Saturated Liquid given its Temperature. It is one of the functions
of the STEAMTABLE algorithm (see page 492).
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
SSLT input and output values

470

P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

TEMP

32.0

705.47

(OUT 1)

ENTR

-0.000036890

1.0612

REF_1100

5.114 STATISTICS

5.114 STATISTICS
Description
The STATISTICS algorithm performs running calculations of weighted arithmetic mean, variance
and standard deviation of sampled input, based on values from TW (Time Window). The TW
parameter is defined by the user. This algorithm also tracks input samples to determine their
minimal and maximal value from TW last time. Additionally a user can divide the time window into
a maximum of four regions and define weights for each region. Weights can be defined by a point
or as a static, non-negative real value. Values from a given partition are taken with the same
weight.
Functional Symbol

The parameters for the Functional Symbols are defined below:

IN1 input

W1 weight for 1st partition

W2 weight for 2nd partition

W3 weight for 3rd partition

W4 weight for 4th partition

MEAN weighted arithmetic mean of input values (denoted as

VAR variance of input values (denoted as

SDEV standard deviation of input values (denoted as

MIN minimal value of input

MAX maximal value of input

ROC rate of change of MEAN

STATE information about state of the buffer 0/1 (not full/full)

STATUS information about accuracy of configuration parameters

REF_1100

)
)

471

5.114 STATISTICS
Algorithm Parameters and Rules
Time Window Definition
User must define:
UNIT units of time. The user can select from one of five units:
0 = tenths of a second
1 = seconds
2 = minutes
3 = hours
4 = days
TIME number of units
Time window (Tw) is defined as:
TW = UNIT x TIME
Below is a graphical representation of the Time window.

Figure 1: Time Window

472

REF_1100

5.114 STATISTICS
Because the time window can encompass a large number of input samples, it is divided into NUM
(up to 60) subregions. For each subregion, a set of DISTANCE subsequent input samples is
taken. Only valid samples without BAD quality are used. Each time the algorithm takes the next
set of DISTANCE subsequent input samples into a new subregion, it stores a number of
acceptable samples, their sum and the sum of their squares for this subregion. Those values are
then used to calculate outputs.
The recommended length of time window is a multiple of p (control area time). The following
guidelines are recommended for best performance:

If NUM is smaller than 60, then the algorithm uses M last input values itself to calculate
outputs. Value of NUM is set to M. DISTANCE is set to 1.

If NUM is a multiple of 60, then the algorithm divides the time window into 60 subregions with
the same length (DISTANCE). For each sub region number of acceptable input values, the
sum and sum of squares is computed and then used to calculate outputs. The value of NUM
is set to 60, its maximal number. DISTANCE is set to M/60.

The following description illustrates how the algorithm calculates NUM parameter and
DISTANCE.
First, the algorithm calculates the number of all cycles (number of input samples) during the time
window:

where:
NUMBER_ALL_CYCLES is rounded down
Next, the algorithm calculates the distance (number of input samples taken into each subregion):

where:
DISTANCE is rounded up
Based on the number of all cycles during time window and distance, the algorithm calculates the
number of subregions, as:

REF_1100

473

5.114 STATISTICS
If the length of time window is not a multiple of p then bit 1 in the STAT output point is set to 1. In
this case, the length of time window is shorter than original settings.
For example, assume the follow parameters:
p

= control area time = 20[sec]

UNIT

= seconds

TIME

= 90

The equations are solved as follows:


TW = UNIT x TIME = 90 x 1[s] = 90s

474

REF_1100

5.114 STATISTICS
If the length of time window is a multiple of p but M is not a multiple of 60, then bit 0 in the STAT
output point is set to 1. In this case, the length of time window is not changed, but the last
subregion is smaller. Distance for the last shorter subregion is calculated as a remainder of
NUMBER_ALL_CYCLES / DISTANCE.
For further explanation, the following two examples are shown. The first example shows a
situation when the recommended conditions are followed. The second example shows a
situation when the recommended conditions are not followed.
Example 1
In this example, the following parameters are used:
p

= control area time = 1[sec]

UNIT

= seconds

TIME

= 300

For these settings, the time window is equal to 300 control cycles and NUM parameter (number of
subregion) is equal to 60 (maximal value).
The following figure represents a distribution of subregions in the time window.

REF_1100

475

5.114 STATISTICS

Figure 2: Distribution of Subregions in Time Window (recommended conditions)

476

REF_1100

5.114 STATISTICS
Example 2
This example represents a situation when the length of time window is not divided by 60 and the
recommended parameters are not followed. This situation can happen when a user sets
parameters that do not follow the recommendations. A second situation can happen when the
control time area changes (sheet is run in a different time area). The algorithm works correctly
with these parameters, but they are different from the recommended parameters.
For this example, assume the following parameters:
p

= control area time = 1[sec]

UNIT

= seconds

TIME

= 303

The equations are solved as follows:


TW = UNIT x TIME = 303 x 1[s] = 303s

REF_1100

477

5.114 STATISTICS
The following figure represents a distribution of sums in the time window using non-recommended
parameter conditions.

Figure 3: Distribution of Subregions in Time Window (not recommended conditions)

478

REF_1100

5.114 STATISTICS
In this case, the number of subregions is reduced to NUM=51. This number makes a steady
distribution of subregions number of input samples used to calculate each sum (except last) is
the same. Each sum is calculated from six input samples; however, the last sum only has three
input samples.
Weights definition
The Time window can be divided into a maximum of four regions. The user defines ranges of
regions and weights.
PART 1 - end range of first partition defined by number of units
PART 2 - end range of second partition defined by number of units
PART 3 - end range of third partition defined by number of units
PART 4 - end range of fourth partition defined by number of units
W1

- weight for first partition

W2

- weight for second partition

W3

- weight for third partition

W4

- weight for fourth partition

Note: Ranges are defined in the same units as the time window. Weight value has to be a
non-negative real value.
Below is an example with definitions, ranges and weights (expanded Example 1).
Example 3
This example assumes the following parameters:
p

= control area time = 1[sec]

UNIT

= seconds

TIME

= 300

R1

=6

R2

= 150

R3

= 293

R4

= TIME = 300

For these settings, the time window is equal to 300 control cycles and the NUM parameter is
equal to 60.

REF_1100

479

5.114 STATISTICS

The following figure shows a distribution of subregions in the time window.

Figure 4: Time Window with Weights

480

REF_1100

5.114 STATISTICS
In the case with weights, the algorithm must check membership to a region for each sum. The
algorithm calculates where the end for each region is supposed to be. Calculations are based on
the following equations:

Next, the algorithm calculates the final output as:

REF_1100

481

5.114 STATISTICS
In Example 3, the parameters were defined as follows:
p

= control area time = 1[sec]

UNIT

= seconds

TIME

= 300

PART1 = 6
PART2 = 150
PART3 = 293
PART4
NUM

= TIME = 300
=60

Therefore, the equations are solved as follows:

These results are shown in the Time Window with Weights figure.
Number of sums for region 1 is equal to 1.
Number of sums for region 2 is equal to 30-1=29.
Number of sums for region 3 is equal to 58-30=28.
Number of sums for region 4 is equal to 60-58=2 .

482

REF_1100

5.114 STATISTICS

Final output (if all samples are not BAD) is solved with the following equation:

REF_1100

483

5.114 STATISTICS
Quality of Input and Output Points
Qualities of MEAN, VAR, SDEV and ROC outputs are based on qualities for subregions.
Quality for each subregion is as follows:

If all input samples taken into subregion are BAD - BAD

If less than half of the input samples are GOOD - POOR

If more than half of the input samples are GOOD - FAIR

If all input samples taken into subregion are GOOD - GOOD

Qualities of MEAN, VAR, SDEV and ROC outputs are as follows:

Until the first subregion is not filled (MEAN, VAR, SDEV) - BAD

Until the first two subregions are not filled (ROC) - BAD

If the quality of all subregions is BAD - BAD

If the quality of less than half the subregions is GOOD - POOR

If the quality of less than half of the sub regions is FAIR or POOR - FAIR

If the quality of more than half the subregions is GOOD - FAIR

If the quality of more than half (or all) of the sub regions is FAIR or POOR - POOR

If the quality of all subregions is GOOD - GOOD

If the QUAL parameter is set to NO, then the following is true:

The output quality will be set to the worst quality of the weight inputs. If the output quality is
calculated as bad, the algorithm will stop calculating the ROC, VAR, SDEV, and MEAN
outputs.

If the weight signals are set to a negative real value, then the ROC, VAR, SDEV, and MEAN
outputs will be set to BAD quality.

If the weighted parameters are defined by the input pins, then the outputs will remain BAD
until the W1 through W4 input(s) ae set to GOOD again.

If the weighted parameters are defined in the algorithm, then the algorithm will set the
negative value to zero, and the quality will be set to GOOD.

Weight parameters are only used for calculating the MEAN.


Qualities of MIN and MAX outputs are set to qualities of input samples with minimum and
maximum value during time window Tw. Additionally, those qualities are set to BAD until the first
subregion is filled.

484

REF_1100

5.114 STATISTICS

Function
MEAN output
The STATISTICS algorithm calculates the weighted arithmetic mean of input samples.

If weights are equal to 1.0, then the algorithm calculates the standard mean of input samples.
VAR and SDEV Outputs
Additionally, the algorithm calculates sample variance and standard deviation, which are defined
as the following (note that NUM is changed to N):

where:

= input sample value from time k-i


n

= number of all samples in time window Tw

= mean value of input sample values in time window Tw

REF_1100

485

5.114 STATISTICS
The algorithm cannot store all the values for the above equation. Therefore, the standard
deviation and variance are derived by the following equations:

Using the sum in each region, the equation can be written as follows:

where:
= sum of samples from subregion i

= sum of squares of samples from subregion i

= number of samples used to calculate sum

If N equals 1, then

486

and

are set to zero.

REF_1100

5.114 STATISTICS

MIN and MAX Outputs


The STATISTICS algorithm reports the minimal and maximal input sample from N (NUM) last
subregions:

where:

= input sample with minimal value from i subregion;

where:

= input sample with maximal value from i subregion;


The outputs minimum value MIN and maximum value MAX are calculated at every loop, based on
stored min/max input values of samples from N last subregions. Qualities of these outputs are set
to qualities of samples with minimum value and maximum value.
ROC Output
The STATISTICS algorithm also calculates the rate of change of MEAN output value defined as:

where:
= Actual value of MEAN output

= Previous value of MEAN output


Additional Information
During initial operation, the algorithm calculates outputs based on the configuration of TOPT
parameters. TOPT is defined as:
0 (yes) Mean value is equal to current input value (until buffer is full). STDV and VAR
are equal to 0.0. When the buffer is full, the algorithm starts working according
to the explanations listed in the examples above.
1 (no) Algorithm calculates MEAN, STDV and VAR values based on the samples as
they become available in the Time window.
Each change of the TIME parameter clears all stored data. STATE value is reset to 0.

REF_1100

487

5.114 STATISTICS
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU Integer

Data Init

Required

149

Tuning diagram
number

TOPT

X3 - Byte

Data Init

Optional

YES

Track output:
Yes
No

QUAL

X2 - Byte

Data Init

Optional

No

Ignore quality of
weighted points:
No
Yes

UNIT

X1 - Byte

Data Init

Optional

Units of time

0 = tenths of a second
1 = seconds
2 = minutes
3 = hours
4 = days
TIME

G0 Integer

Tuning
Constant

Required

Number of units

PART 1

G2 Integer

Tuning
Constant

Required

End of range of first


partition

PART 2

G3 Integer

Tuning
Constant

Required

End of range of second


partition

PART 3

G4 Integer

Tuning
Constant

Required

End of range of third


partition

PART 4

G5 Integer

Tuning
Constant

Required

End of range of fourth


partition

Variable

Required

Input (analog)

LA

IN1

488

* W1

R1 - Real

Selectable

Required

1.0

Weight for first partition

LA

* W2

R2 - Real

Selectable

Required

1.0

Weight for second


partition

LA

* W3

R3 - Real

Selectable

Required

1.0

Weight for third


partition

LA

* W4

R4 - Real

Selectable

Required

1.0

Weight for fourth


partition

LA

MEAN

Variable

Optional

Output (analog) weighted arithmetic

LA

VAR

Variable

Optional

Output (analog) variance

LA

REF_1100

5.114 STATISTICS

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

SDEV

Variable

Optional

Output (analog) standard deviation

LA

MIN

Variable

Optional

Output (analog) minimal value

LA

MAX

Variable

Optional

Output (analog) maximum value

LA

ROC

Variable

Optional

Output (analog) - rate


of change

LA

STATE

Variable

Optional

Buffer state

LD, LP

STAT

Variable

Optional

Configuration status

LP

* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

REF_1100

489

5.115 STEAMFLOW

5.115 STEAMFLOW
Description
The STEAMFLOW algorithm performs a flow compensation based on a flow measurement on an
input as a differential pressure input or a flow input (IN1). Correction is applied from specific
volume (IN2), which comes from the output of the STEAMTABLE algorithm (see page 492).
Invalid Real Numbers and Quality
If the output value is invalid, the quality of OUT is set to BAD. Otherwise, the quality of OUT is set
to the worst quality of the two inputs.
Note: You are responsible for the inputs units.
Functional Symbol

Algorithm Record Type= LC


Algorithm Definitions

490

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init.

Required

22

Tuning Diagram
Number

TYPE

X1-Byte

Data Init.

Required

DELTAP

Input Type (Deltap or


Flow)

SCAL

R1-Real

Tuning
Constant

Required

1.0

Scaling factor

BASE

R2-Real

Tuning
Constant

Required

1.0

Base specific volume

GAIN

R3-Real

Tuning
Constant

Required

1.0

Gain on Specific
Volume

* IN1

Variable

Required

Analog Flow
Transmitter Delta
Pressure Input

LA

* IN2

Variable

Required

Analog Specific
Volume Input

LA

REF_1100

5.115 STEAMFLOW

N AM E

OUT

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

Variable

Required

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Analog output
variable

LA

* Parameter name many vary depending on software release.

Function
DELTAP:

FLOW:

REF_1100

491

5.116 STEAMTABLE

5.116 STEAMTABLE
Description
The STEAMTABLE algorithm calculates thermodynamic properties of water and steam. The
STEAMTABLE algorithm supports both English and SI engineering units. The inputs are checked
to determine if they are in range. If they are not, the output point is set to BAD, the last GOOD
value is retained, and the Flag output is set to TRUE. If more than one input is required, they are
also checked to determine if the combination of input is reasonable. If they are not reasonable,
the output point is set to BAD, the last GOOD value is retained, and the Flag output is set to
TRUE. Otherwise, the quality of the OUT is set to the worst quality among the inputs.
Note: The steam tables are based on the 1967 American Society of Mechanical Engineers
(ASME) steam tables.
There are eleven individual symbols for the functions the STEAMTABLE algorithm performs. They
are as follows:
REGION

CONTROL BUILDER
ALGORITHM SYMBOL

REQUIRED INPUT

OUTPUT

Compressed Liquid (CL)

HSCLTP (see page


250)

Temperature (IN1)

Entropy (OUT)

Pressure (IN2)

Enthalpy (OUT1)

Atm. Pressure (IN3)


VCLTP (see page 531)

Temperature (IN1)
Pressure (IN2)

Specific Volume
(OUT)

Atm. Pressure (IN3)


Saturated Liquid (SL)

HSLT (see page 251)

Temperature (IN1)

Enthalpy (OUT)

SSLT (see page 470)

Temperature (IN1)

Entropy (OUT)

VSLT (see page 532)

Temperature (IN1)

Specific Volume
(OUT)

PSLT (see page 382)

Temperature (IN1)

Pressure (OUT)

TSLP (see page 528)

Pressure (IN1)

Temperature (OUT)

Atm. Pressure (IN2)

Saturated Vapor (SV)

TSLH (see page 527)

Enthalpy (IN1)

Temperature (OUT)

PSVS (see page 383)

Entropy (IN1)

Pressure (OUT)

HSTVSVP (see page


252)

Pressure (IN1)

Enthalpy (OUT)
Temperature (OUT1)

Atm. Pressure (IN2)

Entropy (OUT2)
Specific Volume
(OUT3)

492

REF_1100

5.116 STEAMTABLE

REGION

CONTROL BUILDER
ALGORITHM SYMBOL

REQUIRED INPUT

OUTPUT

Superheated Steam (SS)

HSVSSTP (see page


253)

Temperature (IN1)

Entropy (OUT)

Pressure (IN2)

Enthalpy (OUT1)

Atm. Pressure (IN3)

Specific Volume
(OUT2)

Control Builder Algorithm Symbol


The Control Builder Algorithm Symbol table provides a definition for each abbreviation used to
create the name for each STEAMTABLE function . They are as follows:
ABBREVI ATION

DEFINITION

CL

Compressed Liquid

Enthalpy

Pressure

Entropy

SL

Saturated Liquid

SS

Super Heated

SV

Saturated Vapor

Temperature

Specific Volume

Functional Symbol

Algorithm Record Type= LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

UNIT

X1-Byte

Data Init

Required

DEFAULT
VALUE
0.0

DESCRIPTION

Engineering Units (0 English (Default), 1 SI)

MIN.
POINT
RECORD

See Engineering
Units Table below.

REF_1100

493

5.116 STEAMTABLE

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

PROQ

X4-Byte

Data Init

Required

ON

Quality is propagated:
ON
OFF

MIN.
POINT
RECORD

IN1

Variable

Required

Analog Input

LA

IN2

Variable

Required/
Optional
(depending on
algorithm)

Analog Input

LA

IN3

Variable

Optional

Analog Input

LA

OUT

Variable

Required/
Optional
(depending on
algorithm)

Analog output
variable

LA

OUT1

Variable

Optional

Analog output
variable

LA

OUT2

Variable

Optional

Analog output
variable

LA

OUT3

Variable

Optional

Analog output
variable

LA

FLAG

Variable

Optional

Digital output variable

LD

Engineering Units

494

N AM E

SI

ENGLISH

Temperature (T)

C (Celsius)

F (Farenheit)

Pressure (P)

BAR

psig

Specific Volume (V)

M3/Kg

FT3/LBM

Enthalpy (H)

KJ/Kg

BTU/LBM

Entropy (S)

KJ/Kg x K

BTU/LBM x R (Rankine)

REF_1100

5.117 STEPTIME

5.117 STEPTIME
Description
The STEPTIME algorithm is an automatic step timer. For the STEPTIME algorithm, the output
(STEP) is an analog real value that always equals an integer from one through 50. The value
increments after a predetermined time delay, which may be different for each time interval. For
example, STEP may stay at 1 for 10 seconds, and then stay at 2 for five minutes. The time
intervals for each step are initialized integers in the algorithm record. The units of time to be used
for all the time intervals must be the same. The X1 field of the algorithm record should be
initialized to indicate which units are to be used according to the table. When all used steps are
completed, the output reverts to Step 1. Steps that have a time interval of zero are skipped.
Functional Symbol

G0=

B0=

C0=

D0=

YM=

G1=

B1=

C1=

D1=

YL=

G2=

B2=

C2=

D2=

E2=

G3=

YU=

C3=

YP=

E3=

G4=

B4=

C4=

D4=

E4=

G5=

B5=

C5=

D5=

YC=

G6=

B6=

C6=

D6=

Y9=

G7=

B7=

C7=

YN=

E7=

G8=

B8=

C8=

D8=

E8=

G9

B9=

YT

D9=

Y8=

The value of STEP is tracked to the value of the track input (TRIN) when the tracking request
(TMOD) is TRUE. If the algorithm is told to track a step that has a zero time interval, the value of
STEP is the next step after this step that has a non-zero time interval. If the algorithm is not
tracking (TMOD = FALSE), the current time and the current step are held constant when the hold
request (HOLD) is TRUE. The time remaining in the timing cycle for the current step is output as
hours (RHRS), minutes (RMIN), and seconds (RSEC) with resolution down to a tenth of a second.
The hours (EHRS), minutes (EMIN), and seconds (ESEC) with resolution down to a tenth of a
second of the time elapsed in the timing cycle for the current step are also available if the optional
outputs are initialized by the user.
Rules
1. The outputs are not scan-removable, but may be set to certain values using the TMOD and
TRIN inputs to track the algorithm to a particular step.

REF_1100

495

5.117 STEPTIME
2. The track input and output values are checked for invalid real numbers. If a track request is
received and the track input is invalid, the tracking request is ignored.
If the algorithm calculates an invalid real number for the output, the quality of the output is set
to BAD and the output value is invalid. Otherwise, the quality of the output is set to GOOD.
3. The algorithm is also reset to the first step if a drop failover occurs and the value of the
current step number is invalid. Otherwise, the algorithm remains in the current step.
4. Controller loop time must be set to 100, 200, 500, or 1,000 milliseconds.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU Integer

Data Init.

Required

100

Tuning Diagram
Number

MIN.
POINT
RECORD

HOLD

Variable

Required

Input (digital); hold


request

LD, LP

TMOD

Variable

Required

Input (digital);
tracking request

LD, LP

TRIN

Variable

Required

Input (analog); tracks


the step to this value

LA

Data Init.

Optional

Code number for the


units of time to be
used. (value - units
of time)

UNIT

X1-Byte

0 - 0.1 seconds
(default)
1 - seconds
1 - minutes
3 - hours

496

T01

G0-Integer

Tuning
Constant

Optional

Time interval for


Step 1

T02

G1-Integer

Tuning
Constant

Optional

Time interval for


Step 2

T03

G2-Integer

Tuning
Constant

Optional

Time interval for


Step 3

T04

G3-Integer

Tuning
Constant

Optional

Time interval for


Step 4

T05

G4-Integer

Tuning
Constant

Optional

Time interval for

Step 5

T06

G5-Integer

Tuning
Constant

Optional

Time interval for


Step 6

T07

G6-Integer

Tuning
Constant

Optional

Time interval for


Step 7

REF_1100

5.117 STEPTIME

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

T08

G7-Integer

Tuning
Constant

T09

G8-Integer

T10

Optional

Time interval for


Step 8

Tuning
Constant

Optional

Time interval for


Step 9

G9-Integer

Tuning
Constant

Optional

Time interval for


Step 10

T11

B0-Integer

Tuning
Constant

Optional

Time interval for


Step 11

T12

B1-Integer

Tuning
Constant

Optional

Time interval for


Step 12

T13

B2-Integer

Tuning
Constant

Optional

Time interval for


Step 13

T14

YU-Integer

Tuning
Constant

Optional

Time interval for


Step 14

T15

B4-Integer

Tuning
Constant

Optional

Time interval for


Step 15

T16

B5-Integer

Tuning
Constant

Optional

Time interval for


Step 16

T17

B6-Integer

Tuning
Constant

Optional

Time interval for


Step 17

T18

B7-Integer

Tuning
Constant

Optional

Time interval for


Step 18

T19

B8-Integer

Tuning
Constant

Optional

Time interval for


Step 19

T20

B9-Integer

Tuning
Constant

Optional

Time interval for


Step 20

T21

C0-Integer

Tuning
Constant

Optional

Time interval for


Step 21

T22

C1-Integer

Tuning
Constant

Optional

Time interval for


Step 22

T23

C2-Integer

Tuning
Constant

Optional

Time interval for


Step 23

T24

C3-Integer

Tuning
Constant

Optional

Time interval for


Step 24

T25

C4-Integer

Tuning
Constant

Optional

Time interval for


Step 25

T26

C5-Integer

Tuning
Constant

Optional

Time interval for


Step 26

T27

C6-Integer

Tuning
Constant

Optional

Time interval for


Step 27

T28

C7-Integer

Tuning

Optional

Time interval for


Step 28

Constant

REF_1100

MIN.
POINT
RECORD

497

5.117 STEPTIME

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

T29

C8-Integer

Tuning

Optional

Time interval for


Step 29

Constant
T30

YT-Integer

Tuning
Constant

Optional

Time interval for


Step 30

T31

D0-Integer

Tuning
Constant

Optional

Time interval for


Step 31

T32

D1-Integer

Tuning
Constant

Optional

Time interval for


Step 32

T33

D2-Integer

Tuning
Constant

Optional

Time interval for


Step 33

T34

YP-Integer

Tuning
Constant

Optional

Time interval for


Step 34

T35

D4-Integer

Tuning
Constant

Optional

Time interval for


Step 35

T36

D5-Integer

Tuning
Constant

Optional

Time interval for


Step 36

T37

D6-Integer

Tuning
Constant

Optional

Time interval for


Step 37

T38

YN-Integer

Tuning
Constant

Optional

Time interval for


Step 38

T39

D8-Integer

Tuning
Constant

Optional

Time interval for


Step 39

T40

D9-Integer

Tuning
Constant

Optional

Time interval for

Step 40

T41

YM-Integer

Tuning
Constant

Optional

Time interval for


Step 41

T42

YL-Integer

Tuning

Optional

Time interval for


Step 42

Constant
T43

E2-Integer

Tuning
Constant

Optional

Time interval for


Step 43

T44

E3-Integer

Tuning

Optional

Time interval for


Step 44

Optional

Time interval for

Constant
T45

E4-Integer

Tuning
Constant

498

MIN.
POINT
RECORD

Step 45

T46

YC-Integer

Tuning
Constant

Optional

Time interval for


Step 46

T47

Y9-Integer

Tuning
Constant

Optional

Time interval for


Step 47

T48

E7-Integer

Tuning
Constant

Optional

Time interval for


Step 48

REF_1100

5.117 STEPTIME

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

T49

E8-Integer

Tuning
Constant

T50

Y8-Integer

MIN.
POINT
RECORD

Optional

Time interval for


Step 49

Tuning
Constant

Optional

Time interval for


Step 50

STEP

Variable

Required

Output (analog); the


current step number

LA

RHRS

Variable

Required

Output (analog); the


number of hours for
the time remaining in
the current timing
cycle

LA

RMIN

Variable

Required

Output (analog); the


number of minutes
for the time
remaining in the
current timing cycle

LA

RSEC

Variable

Required

Output (analog); the


number of seconds
for the time
remaining in the
current timing cycle

LA

EHRS

Variable

Optional

Output (analog); the


number of hours for
the time elapsed in
the current timing
cycle

LA

EMIN

Variable

Optional

Output (analog); the


number of minutes
for the time elapsed
in the current timing
cycle

LA

ESEC

Variable

Optional

Output (analog); the


number of seconds
for the time elapsed
in the current timing
cycle

LA

REF_1100

499

5.118 SUM

5.118 SUM
Description
The output of the SUM algorithm is the sum of the four individually gained and biased inputs.
Note: If the algorithm receives an invalid value as the input, or if it calculates an invalid value as
the output, the drop is placed into alarm.
Functional Symbol

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog tracking point. Make sure to connect the upstream algorithm which needs tracking
to SUMs IN1. This algorithm takes the following action in response to the information found in the
analog input signal TRIN:
BIT

500

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

No action

Passed through**

20

Raise inhibit

No action

Passed through**

21

Conditional Track

Implemented

Passed through***

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Not Used

No action

Not used

28

Not Used

No action

Not used

29

Not Used

No action

Not used

30

Low limit reached

No action

Low limit reached

REF_1100

5.118 SUM

BIT
31

DESCRIPTION

ACTION

TOUT SIGNAL

High limit reached

No action

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the
definitions given in Setting Tracking Signals.
*** If the algorithm is being told to track, then the Conditional track bit is ignored.
Otherwise, the value of the conditional track bit is transferred to all output track
points. If the Conditional Track bit is set in the track input point, the analog value of
all output track points is calculated based on the analog value of the track input point.

The high and low limit flags and the tracking signals from the algorithm are output to TOUT, to be
used for display and by an upstream algorithm. If the output value is invalid, the quality of OUT is
set to BAD. Otherwise, the quality of OUT is set to the worst quality of the two inputs when not in
tracking mode. When tracking, the quality is set to the quality of the track input variable.
Note: If the algorithm generates an invalid track output value, the IN1 input value is used as the
track output, unless it is invalid. The track output value is not updated if both the calculated track
output and IN1 input values are invalid.
Algorithm Record Type =LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init

IN1G

R1-Real

IN1B

IN2G

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Required

84

Tuning diagram
number

Tuning
Constant

Required

1.0

Gain on input 1. The


gain on the input 1
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

R2-Real

Tuning
Constant

Required

0.0

Bias on input 1. The


gain on the input 1
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

R3-Real

Tuning
Constant

Required

1.0

Gain on input 2. The


gain on the input 1
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

501

5.118 SUM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

IN2B

R4-Real

Tuning
Constant

Required

0.0

Bias on input 2. The


gain on the input 1
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

IN3G

R8-Real

Tuning
Constant

Required

1.0

Gain on Input 3. The


gain on the input 1
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

IN3B

R9-Real

Tuning
Constant

Required

0.0

Bias on Input 3. The


gain on the input 1
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

IN4G

S1-Real

Tuning
Constant

Required

1.0

Gain on Input 4. The


gain on the input 1
should never be
initialized to zero; if it
is, the drop is placed
into alarm.

IN4B

S2-Real

Tuning
Constant

Required

0.0

Bias on Input 3

TPSC

R5-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

BTSC

R6-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point

R7-Real

Tuning
Constant

Required

2.5

Track ramp rate (units


per second)

TRAT

502

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input 1 analog input

LA

TRIN

Variable

Optional

Tracking and Limiting


mode signals and
tracking value; analog
input variable

LA

IN2

Variable

Required

Input 2 analog input

LA

IN3

Variable

Optional

Input 3 analog input

LA

IN4

Variable

Optional

Input 4 analog input

LA

OUT

Variable

Required

Analog output
variable

LA

TOUT

Variable

Required

Track output value,


mode and status
signal for input 1
variable

LA

REF_1100

5.118 SUM
Function
IN1GB = (IN1 x IN1 GAIN) + IN1 BIAS
IN2GB = (IN2 x IN2 GAIN) + IN2 BIAS
IN3GB = (IN3 x IN3 GAIN) + IN3 BIAS
IN4GB = (IN4 x IN4 GAIN) + IN4 BIAS
OUT = IN1GB + IN2GB + IN3GB + IN4GB
IF OUT >= TPSC THEN
OUT = TPSC
ELSE
IF OUT <= BTSC THEN
OUT = BTSC

REF_1100

503

5.119 SYSTEMTIME

5.119 SYSTEMTIME
Description
While the RUN flag is set, the SYSTEMTIME algorithm accesses the time from the Contollers
time (expressed in Universal Time Coordinates (UTC)) and stores it in the separate, optional,
analog outputs for seconds, minutes, hours, day, month, and year.
If the month value is zero (indicating that the time is not updated), or if the RUN flag is FALSE, the
optional Time Not Updated digital output is set.

Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

504

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

RUN

Variable

Required

Input (digital); Run


flag

LD, LP

SEC

Variable

Optional

Output (analog);
seconds

LA

MIN

Variable

Optional

Output (analog);
minutes

LA

HOUR

Variable

Optional

Output (analog);
hours

LA

DAYM

Variable

Optional

Output (analog); day


of month

LA

MNTH

Variable

Optional

Output (analog);
month

LA

REF_1100

5.119 SYSTEMTIME

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

YEAR

Variable

Optional

Output (analog); year

LA

TNUP

Variable

Optional

Output (digital); time


not updated

LD, LP

REF_1100

505

5.120 TANGENT

5.120 TANGENT
Description
The TANGENT algorithm performs a mathematical tangent function. TANGENT has one input
and one output analog point. Each time the algorithm is executed, if the output is on scan, it is set
to the TANGENT of the input. The input to this algorithm is in radians. If an input is only available
in degrees, multiply it by 0.01745329 to convert to radians. If the input is +/- pi/2 or any integer
multiple of pi, plus pi/2, the output is an invalid number and the drop is placed into alarm.
Invalid Real Numbers and Quality
Analog input values are checked for invalid real numbers. If the input value is invalid, the value of
the output is invalid and its quality is set to BAD. If the input is valid, the quality of the input is
propagated to the output.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

Function
OUT=TANGENT(IN1)

506

REF_1100

5.121 TIMECHANGE

5.121 TIMECHANGE
Description
The TIMECHANGE algorithm checks the Controllers time (expressed in Universal Time
Coordinates (UTC)) against the old values of the time. If the hours, minutes, or seconds have
changed, the appropriate output digital flags are set; otherwise, they are reset. Each output
produces a one loop, one shot pulse when hours, minutes, or seconds change from a previous
value.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OLD H

R1-Real

Data Init.

Optional

0.0

Internal Data only.


Not to be initialized by
user.

OLD M

R2-Real

Data Init.

Optional

0.0

Internal Data only.


Not to be initialized by
user.

OLD S

R3-Real

Data Init.

Optional

0.0

Internal Data only.


Not to be initialized by
user.

HCHG

Variable

Required

Output (digital):
Change in Hours flag

LD, LP

MCHG

Variable

Required

Output (digital);
Change in Minutes
flag

LD, LP

SCHG

Variable

Required

Output (digital);
Change in Seconds
flag

LD, LP

REF_1100

507

5.122 TIMEDETECT

5.122 TIMEDETECT
Description
The TIMEDETECT algorithm checks the hour value from the Controllers time (expressed in
Universal Time Coordinates (UTC)) against the old hour value for a change. If the hour has
changed, the current hour and day of the week are checked against the hour for the change of
day, the hours for the change of shift, and the day and hour for the change of week. The flags are
reset if the hour has not changed. If a change has occurred for the day, shift, or week, the digital
output for that change is TRUE for one loop.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

508

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU Integer

Data Init.

SHF1

X1-Byte

SHF2

MIN.
POINT
RECORD

Required

87

Tuning diagram
number

Tuning
Constant

Required

First shift hour/day


hour
(0 - 23)

X2-Byte

Tuning
Constant

Optional

Second shift hour


(0 - 23)

SHF3

X3-Byte

Tuning
Constant

Optional

Third shift hour (0 23)

WEEK

X4-Byte

Tuning
Constant

Optional

Day of the week

(Day range. For


example, 1 = Sunday)

DCHG

Variable

Required

Output (digital);
Change of Day flag

LD, LP

SHFT

Variable

Required

Output (digital);
Change of Shift flag

LD, LP

WCHG

Variable

Required

Output (digital);
Change of Week flag

LD, LP

REF_1100

5.122 TIMEDETECT

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Note: SHF1 must be initialized. If SHF2 and SHF3 are not initialized or are initialized to zero, the SHFT is
not updated. If WEEK is not initialized or is initialized to zero, WCHG is not updated. DCHG is always
updated.

REF_1100

509

5.123 TIMEMON

5.123 TIMEMON
Description
If the RUN flag is set, the TIMEMON algorithm provides the following functions:

If the Controller Date/Time is between the Date 1/Time 1 and Date 2/Time 2 tuning constants,
the optional digital output flag, FLG1 is set TRUE.

When the Date 2/Time 2 tuning constants are zero, FLG1 is pulsed when the Controller
Date/Time is equal to Date 1/Time 1.

The MON, DAY, DWK fields of the tuning constants are ignored if zero; therefore, the tuning
constants can represent time-into-year, time-into-month, time-into-week, or time-into-day. (For
example: if HR1 is set to 15.0 and no other FLG1 tuning constants are specified, FLG1 is
pulsed every day at 3:00 p.m.)

The optional digital output FLG2 is set when the Controller time equals the Start Time tuning
constants, and at every following incremental boundary in the day, as specified by the
Incremental Time tuning constants.
For example: if SHR = 15, SMIN = 30, IMIN = 1, and ISEC = 30, FLG2 is pulsed at 3:30 p.m.
and at each following 90-sec interval until 23:59:59.

Note: Controller time is expressed in Universal Time Coordinates (UTC).


Functional Symbol

Note: The Incremental Time constant should be at least three times the Loop time for the FLG2
output to be seen as a pulse.
Algorithm Record Type = LC
Algorithm Definitions

510

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU Integer

Data Init

RUN

MON1
DAY1

MIN.
POINT
RECORD

Required

88

Tuning diagram
number

Variable

Required

Input (digital); RUN


flag

B1-Integer

Tuning
Constant

Optional

Date 1 month

B2-Integer

Tuning
Constant

Optional

Date 1 day

LD, LP

REF_1100

5.123 TIMEMON

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DWK1

YU-Integer

Tuning
Constant

Optional

DEFAULT
VALUE
0

DESCRIPTION

Date 1 day of week

MIN.
POINT
RECORD

Valid values are:


0 - none
1 - Monday
2 - Tuesday
3 - Wednesday
4 - Thursday
5 - Friday
6 - Saturday
7 - Sunday

HR1

B4-Integer

Tuning
Constant

Optional

Time 1 hour

MIN1

B5-Integer

Tuning
Constant

Optional

Time 1 minute

SEC1

B6-Integer

Tuning
Constant

Optional

Time 1 second

MON2

B7-Integer

Tuning
Constant

Optional

Date 2 month

DAY2

B8-Integer

Tuning
Constant

Optional

Date 2 day

DWK2

B9-Integer

Tuning
Constant

Optional

Date 2 day of week

Valid values are:


0 - none
1 - Monday
2 - Tuesday
3 - Wednesday
4 - Thursday
5 - Friday
6 - Saturday
7 - Sunday

HR2

C1-Integer

Tuning
Constant

Optional

Time 2 hour

MIN2

C2-Integer

Tuning
Constant

Optional

Time 2 minute

SEC2

C3-Integer

Tuning
Constant

Optional

Time 2 second

SHR

C4-Integer

Tuning
Constant

Optional

Start time hour

SMIN

C5-Integer

Tuning
Constant

Optional

Start time minute

REF_1100

511

5.123 TIMEMON

512

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

SSEC

C6-Integer

Tuning
Constant

Optional

Start time second

IHR

G3-Integer

Tuning
Constant

Optional

Incremental time
hour

IMIN

G4-Integer

Tuning
Constant

Optional

Incremental time
minute

ISEC

B0-Integer

Tuning
Constant

Optional

Incremental time
second

FLG1

Variable

Optional

Output (digital);
FLG1 flag output

LD, LP

FLG2

Variable

Optional

Output (digital);
FLG2 flag output

LD, LP

REF_1100

5.124 TRANSFER

5.124 TRANSFER
Description
The TRANSFER algorithm performs a transfer between the two inputs. The output is equal to the
IN2 input if the digital input FLAG is TRUE, and the IN1 input if the digital input FLAG is FALSE.
If the algorithm generates an invalid output value for the selected input, the other input is
selected, and the algorithm generates a valid output value if the input for the other point is valid.
The algorithm automatically performs a bumpless transfer between the track input and the
selected input when a tracking request is removed. The algorithm ramps to the selected input
(IN1 or IN2) at the specified track ramp rate (TRR1 or TRR2).
Internal tracking may be selected to allow a bumpless transfer between IN1 and the IN2 inputs.
Individual track ramp rates may be initialized to ramp from the IN1 to the IN2 and from the IN2 to
the IN1.
Note: If the algorithm receives an invalid value as the selected input, or calculates an invalid
value as the output, the drop is placed into alarm.
Functional Symbol

Packed Digital Tracking Signals


Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog point. This algorithm takes the following action in response to the information found
in the analog input signal TRIN:
BIT

REF_1100

DESCRIPTION

TRK1 SIGNAL

TRK2 SIGNAL

16

Track

Implemented and passed


through or set TRUE when IN1
input is not selected

Implemented and passed


through or set TRUE when
IN2 input is not selected

17

Track if lower

Passed through*

Passed through*

18

Track if higher

Passed through*

Passed through*

19

Lower inhibit

Passed through**

Passed through**

20

Raise inhibit

Passed through***

Passed through***

21

Conditional Track

No Action

Not used

513

5.124 TRANSFER

BIT

DESCRIPTION

TRK1 SIGNAL

TRK2 SIGNAL

22

Not used

Not used

Not used

23

Deviation Alarm

Not used

Not used

24

Local Manual mode

Not used

Not used

25

Manual mode

Not used

Not used

26

Auto mode

Not used

Not used

27

Not used

Not used

Not used

28

Not used

Not used

Not used

29

Not used

Not used

Not used

30

Low limit reached

Low limit reached

Not used

31

High limit reached

High limit reached

Not used

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definitions given in
Setting Tracking Signals (see page 16).
*** If the algorithm is being told to track, then the Conditional track bit is ignored. Otherwise, the value of
the conditional track bit is transferred to all output track points. If the Conditional Track bit is set in the
track input point, the analog value of all output track points is calculated based on the analog value of the
track input point.

The high and low limit flags, and the tracking signals from the algorithm are output to, TRK1 and
TRK2, to be used for display and by upstream algorithms. If the output value is invalid, the quality
of OUT is set to BAD. Otherwise, the quality of OUT is set to the quality of the selected input.
When tracking, the quality is set to the quality of the track input variable.
Note: If the calculated track output is invalid, then the IN2 output is equal to the IN2 inputs, and
the IN1 track output is equal to the IN1 variable input, if the inputs are valid. If the calculated
track outputs and the input values are invalid, then the IN2 and IN1 track outputs are not
updated.
Algorithm Record Type= LC
Algorithm Definitions

514

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

DIAG

LU-Integer

Data Init

Required

42

Tuning diagram number

* IN1G

R3-Real

Tuning
Constant

Required

1.0

Gain on input1. The


gain on the input1
should never be
initialized to zero; if it is,
the drop is placed into
alarm.

* IN1B

R4-Real

Tuning
Constant

Required

0.0

Bias on input 1

REF_1100

5.124 TRANSFER

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

* IN2G

R1-Real

Tuning
Constant

Required

1.0

Gain on input2. The


gain on the input2
should never be
initialized to zero; if it is,
the drop is placed into
alarm.

* IN2B

R2-Real

Tuning
Constant

Required

0.0

Bias on input2

TPSC

R5-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

R6-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point

X1-Byte Bit
0

Data Init.

Required

OFF

Internal tracking option:

BTSC
SLEW

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

OFF: No tracking
during a transfer.
ON:
Tracking is
implemented during a
transfer.

TRR1

R7-Real

Tuning
Constant

Required

2.5

Tracking ramp rate from


input1 to input2 or from
the track input to the
input2 (units per
second)

TRR2

R9-Real

Tuning
Constant

Required

2.5

Tracking ramp rate from


input2 to input1or from
the track input to the
input1 (units per
second)

OTRK

X1-Byte
Bit 2

Data Init.

Required

ON

Output Tracking Option:

OFF = output value


does not track.
ON = output value
tracks.

FLAG

Variable

Required

* IN2

Variable

Required

* TRK2

Variable

Required

Track output value,


node and status signals
for Input 2 variable

LA

* IN1

Variable

Required

Input1 (analog)

LA

* TRK1

Variable

Required

Track output value


mode and status signals
for input 1 variable

LA

REF_1100

Digital input signal to


select output (required);
you must enter the
name of a point.
Input2 (analog)

LD, LP

LA

515

5.124 TRANSFER

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

OUT

Variable

Required

Analog output variable

LA

TRIN

Variable

Optional

Tracking and limiting


mode signals and
tracking value; analog
input variable

LA

* Parameter name may vary depending on software release.

Function
IF FLAG = TRUE THEN
OUT = (IN2 x IN2 GAIN) + IN2 BIAS
ELSE
OUT = (IN1 x IN1 GAIN) + IN1 BIAS
IF OUT >= TPSC THEN
OUT = TPSC
ELSE
IF OUT <= BTSC THEN
OUT = BTSC

516

REF_1100

5.125 TRANSLATOR

5.125 TRANSLATOR
Description
The TRANSLATOR algorithm translates the output based on the input of a predefined table. For
the TRANSLATOR algorithm, the input value (IN1) is first rounded to an integer value. This
integer is then used as an index number to access one of the 50 integers initialized in the
algorithm record. The selected integer from the algorithm record is output as a real number in the
output record (OUT). If the input value (always rounds down to an integer) is less than one or
greater than 50, no action is taken and OUT is not changed.
If the input value selects an integer between 1 and 50 that has not been initialized, then OUT
equals zero. The maximum integer number that can be initialized for I01 through I50 is + 32,767.
If the input value (when rounded to an integer) is less than 1 or greater than 50, or if the input
value is invalid, no action is taken, and OUT is not changed. However, if the input value is invalid,
the quality of OUT is set to BAD.
The quality of the input is propagated to the output.
Functional Symbol

G0=

B0=

C0=

D0=

YM=

G1=

B1=

C1=

YQ=

YL=

G2=

B2=

C2=

D2=

E2=

G3=

YU=

C3=

YP=

E3=

G4=

B4=

C4=

D4=

E4=

G5=

B5=

C5=

D5=

YC=

G6=

B6=

C6=

D6=

Y9=

G7=

B7=

C7=

YN=

E7=

G8=

B8=

C8=

D8=

E8=

G9

B9=

YT

D9=

Y8=

REF_1100

517

5.125 TRANSLATOR
Algorithm Record Type = LC
Algorithm Definitions

518

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

I01

G0-Integer

I02

MIN.
POINT
RECORD

Required

103

Tuning diagram
Number

Tuning
Constant

Optional

Possible selected
output value

G1-Integer

Tuning
Constant

Optional

Possible selected
output value

I03

G2-Integer

Tuning
Constant

Optional

Possible selected
output value

I04

G3-Integer

Tuning
Constant

Optional

Possible selected
output value

I05

G4-Integer

Tuning
Constant

Optional

Possible selected
output value

I06

G5-Integer

Tuning
Constant

Optional

Possible selected
output value

I07

G6-Integer

Tuning
Constant

Optional

Possible selected
output value

I08

G7-Integer

Tuning
Constant

Optional

Possible selected
output value

I09

G8-Integer

Tuning
Constant

Optional

Possible selected
output value

I10

G9-Integer

Tuning
Constant

Optional

Possible selected
output value

I11

B0-Integer

Tuning
Constant

Optional

Possible selected
output value

I12

B1-Integer

Tuning
Constant

Optional

Possible selected
output value

I13

B1-Integer

Tuning
Constant

Optional

Possible selected
output value

I14

YU-Integer

Tuning
Constant

Optional

Possible selected
output value

I15

B4-Integer

Tuning
Constant

Optional

Possible selected
output value

I16

B5-Integer

Tuning
Constant

Optional

Possible selected
output value

I17

B6-Integer

Tuning
Constant

Optional

Possible selected
output value

I18

B7-Integer

Tuning
Constant

Optional

Possible selected
output value

I19

B8-Integer

Tuning
Constant

Optional

Possible selected
output value

REF_1100

5.125 TRANSLATOR

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

I20

B9-Integer

Tuning
Constant

Optional

Possible selected
output value

I21

C0-Integer

Tuning
Constant

Optional

Possible selected
output value

I22

C1-Integer

Tuning
Constant

Optional

Possible selected
output value

I23

C2-Integer

Tuning
Constant

Optional

Possible selected
output value

I24

C3-Integer

Tuning
Constant

Optional

Possible selected
output value

I25

C4-Integer

Tuning
Constant

Optional

Possible selected
output value

I26

C5-Integer

Tuning
Constant

Optional

Possible selected
output value

I27

C6-Integer

Tuning
Constant

Optional

Possible selected
output value

I28

C7-Integer

Tuning
Constant

Optional

Possible selected
output value

I29

C8-Integer

Tuning
Constant

Optional

Possible selected
output value

I30

YT-Integer

Tuning
Constant

Optional

Possible selected
output value

I31

D0-Integer

Tuning
Constant

Optional

Possible selected
output value

I32

YQ-Integer

Tuning
Constant

Optional

Possible selected
output value

I33

D2-Integer

Tuning
Constant

Optional

Possible selected
output value

I34

YP-Integer

Tuning
Constant

Optional

Possible selected
output value

I35

D4-Integer

Tuning
Constant

Optional

Possible selected
output value

I36

D5-Integer

Tuning
Constant

Optional

Possible selected
output value

I37

D6-Integer

Tuning
Constant

Optional

Possible selected
output value

I38

YN-Integer

Tuning
Constant

Optional

Possible selected
output value

I39

D8-Integer

Tuning
Constant

Optional

Possible selected
output value

I40

D9-Integer

Tuning
Constant

Optional

Possible selected
output value

I41

YM-Integer

Tuning
Constant

Optional

Possible selected
output value

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

519

5.125 TRANSLATOR

520

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

I42

YL-Integer

Tuning
Constant

Optional

Possible selected
output value

I43

E2-Integer

Tuning
Constant

Optional

Possible selected
output value

I44

E3-Integer

Tuning
Constant

Optional

Possible selected
output value

I45

E4-Integer

Tuning
Constant

Optional

Possible selected
output value

I46

YC-Integer

Tuning
Constant

Optional

Possible selected
output value

I47

Y9-Integer

Tuning
Constant

Optional

Possible selected
output value

I48

E7-Integer

Tuning
Constant

Optional

Possible selected
output value

I49

E8-Integer

Tuning
Constant

Optional

Possible selected
output value

I50

Y8-Integer

Tuning
Constant

Optional

Possible selected
output value

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

REF_1100

5.126 TRANSPORT

5.126 TRANSPORT
Description
The TRANSPORT algorithm samples the analog input point and outputs the sample value with a
time delay. The sampling time (TSAM) and the number of samples (NSAM) control the delay
(DELAY = TSAM x NSAM). If TSAM is less than the loop time of TRANSPORT, TSAM equals the
loop time. The output is zero until the number of samples have been collected. Additional
TRANSPORT algorithms can be strung together in series to obtain longer delay times, if required.
NSAM is continually limited to a range of 1 through 25. If NSAM is negative or zero, then NSAM
goes to 1. If NSAM is greater than 25, NSAM goes to 25.
Invalid Numbers and Quality
The value of the analog input (IN1) is checked for invalid real numbers. If the input value is
invalid, the output value is invalid and the quality of the output is set to BAD. Otherwise, the
quality of the output is set to GOOD.
Functional Symbol

IN1

IN1
OR

OUT

OUT

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init

Required

90

Tuning diagram number

TSAM

T9-Real

Data Init.

Required

Sampling time in seconds

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

521

5.126 TRANSPORT

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NSAM

G0-Integer

Data Init.

Required

Number of samples
(1-25)

INIT

X1-Byte

Data Init.

Optional

Sample initialization

0 or 1 = Samples are
initialized to zero when
the algorithm is first
added to the drop;
samples are not changed
at power-up, reset, or
failover, and may contain
old values.
2 = Samples are
initialized to the current
value of the IN1 analog
input on power-up, reset,
and failover (as well as
when the algorithm is first
added to the drop).
3 = Samples are
initialized to the current
value of the OUT analog
output on power-up,
reset, and failover (as
well as when the
algorithm is first added to
the drop).
4 = Samples are
initialized to zero on
power-up, reset, and
failover (as well as when
the algorithm is first
added to the drop).

522

IN1

Variable

Required

Input (analog)

LA

OUT

Variable

Required

Output (analog)

LA

REF_1100

5.127 TRNSFINDX

5.127 TRNSFINDX
Description
The TRNSFINDX algorithm selects the output analog value from up to 64 outputs which hold the
input IN1. The number of outputs is determined by NMIN which must be less than or equal to 64.
The output selected is based on the index which is the second analog input (IN2). If the index is
less than or equal to 0, or if an index greater than NMIN is selected, the input is not stored.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

NMIN

X1-Byte

Data Init

Required

Select maximum
number

MIN.
POINT
RECORD

IN1

Variable

Required

Analog input value

LA

IN2

Variable

Required

Analog index value

LA

O01

Variable

Required

Analog output value

LA

O02

Variable

Optional

Analog output value

LA

O64

REF_1100

523

5.128 TRUTHTBL

5.128 TRUTHTBL
Description
This digital output of TRUTHTBL is selected from one of 256 possible digital values. The 16
integer values (field B0 through C5) contain the 256 possible digital output states; each bit in an
integer represents a possible digital output (where: 0 = FALSE and 1 = TRUE). The output
selected is based on a binary address formed by eight digital inputs. The integer binary address
values may be input as hexadecimal numbers. Refer to "Converting Algorithm Binary to
Hexadecimal" (see page 6) for information on how to create a hexadecimal number from 16 bits.
The inputs are optional; therefore, any input that is not specified is assumed to have a value of
zero (FALSE). The input binary address may range from zero to 255. The letter "A" represents Bit
0 in the address and the letter "H" represents Bit 7 in the address. For example, if the input binary
address is 36 (C and F are TRUE), the digital output would be based on the value of Bit 4 (the
fifth bit) in the third integer.
Symbol

Note: The size of the algorithm symbol varies as required to enclose the logic symbols being
executed by this algorithm.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

524

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Variable

Optional

Input (digital signal)

LD, LP

Variable

Optional

Input (digital signal)

LD, LP

Variable

Optional

Input (digital signal)

LD, LP

Variable

Optional

Input (digital signal)

LD, LP

Variable

Optional

Input (digital signal)

LD, LP

REF_1100

5.128 TRUTHTBL

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Variable

Optional

Input (digital signal)

LD, LP

Variable

Optional

Input (digital signal)

LD, LP

Variable

Optional

Input (digital signal)

LD, LP

DIAG

LU - Byte

Data Init.

Optional

91

Tuning Diagram
Number (default
value = 91)

I01

B0 - Integer

Tuning
Constant

Optional

Output States 0
through 15

I02

B1 - Integer

Tuning
Constant

Optional

Output States 16
through 31

I03

B2 - Integer

Tuning
Constant

Optional

Output States 32
through 47

I04

B3 - Integer

Tuning
Constant

Optional

Output States 48
through 63

I05

B4 - Integer

Tuning
Constant

Optional

Output States 64
through 79

I06

B5 - Integer

Tuning
Constant

Optional

Output States 80
through 95

I07

B6 - Integer

Tuning
Constant

Optional

Output States 96
through 111

I08

B7 - Integer

Tuning
Constant

Optional

Output States 112


through 127

I09

B8 - Integer

Tuning
Constant

Optional

Output States 128


through 143

I10

B9 - Integer

Tuning
Constant

Optional

Output States 144


through 159

I11

C0 - Integer

Tuning
Constant

Optional

Output States 160


through 175

I12

C1 - Integer

Tuning
Constant

Optional

Output States 176


through 191

I13

C2 - Integer

Tuning
Constant

Optional

Output States 192


through 207

I14

C3 - Integer

Tuning
Constant

Optional

Output States 208


through 223

I15

C4 - Integer

Tuning
Constant

Optional

Output States 224


through 239

I16

C5 - Integer

Tuning
Constant

Optional

Output States 240


through 255

Variable

Required

Output (digital
signal)

OUT

REF_1100

LD, LP

525

5.128 TRUTHTBL
Application Example
TRUTHTBL is a general purpose, logic algorithm. The output represents a Boolean equation of up
to eight inputs. In general, TRUTHTBL condenses discrete logic elements (for example, AND,
OR, NOT, XOR, NAND, or NOR) into one algorithm call. The logic statement of the output is
stated as a Boolean equation and then translated into the proper tuning constants. This
translation can be done either manually or by using the LOGIC program, which resides at the
Engineering Station.
The following figure illustrates how TRUTHTBL is shown on a functional drawing.

The following figure shows how the tuning contants can be manually derived.

526

REF_1100

5.129 TSLH

5.129 TSLH
Description
TSLH calculates Temperature for Saturated Liquid given its Enthalpy (H). It is one of the functions
of the STEAMTABLE (see page 492) algorithm.
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
TSLH input and output values
P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

ENTH

-0.017864220

906.01

(OUT 1)

TEMP

32.0

705.47

REF_1100

527

5.130 TSLP

5.130 TSLP
Description
TSLP calculates Saturation Temperature of Saturated Liquid given its Pressure. It is one of the
functions of the STEAMTABLE algorithm (see page 492).
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
TSLP input and output values
P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

PRES

0.0885891400

3208.23

(INPUT 2)

PRAT

* Pressures are added together.

(OUT 1)

TEMP

32.0

705.47

Note: PRAT is set from 12 to 16 psi.

528

REF_1100

5.131 UNPACK16

5.131 UNPACK16
Description
The UNPACK16 algorithm specifies up to 16 optional, packed digital values in the A2 record field
of a packed LP point record as optional outputs of this algorithm. These outputs may be initialized
as any combination of LD and DD records. The bit in the A2 record field that corresponds to the
output digital point number is moved to the output digital point record.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

TYPE

REQUIRED/
OPTIONAL

DESCRIPTION

MIN.
POINT
RECORD

Variable

Required

Input (packed point)

LP

D0

Variable

Optional

Output (digital) for


Bit 0

LD

D1

Variable

Optional

Output (digital) for


Bit 1

LD

D2

Variable

Optional

Output (digital) for


Bit 2

LD

D3

Variable

Optional

Output (digital) for


Bit 3

LD

D4

Variable

Optional

Output (digital) for


Bit 4

LD

PBPT

LC ALG.
RECORD
FIELD

DEFAULT
VALUE

(PIN)

REF_1100

529

5.131 UNPACK16

N AM E

530

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

D5

Variable

Optional

Output (digital) for


Bit 5

LD

D6

Variable

Optional

Output (digital) for


Bit 6

LD

D7

Variable

Optional

Output (digital) for


Bit 7

LD

D8

Variable

Optional

Output (digital) for


Bit 8

LD

D9

Variable

Optional

Output (digital) for


Bit 9

LD

D10

Variable

Optional

Output (digital) for


Bit 10

LD

D11

Variable

Optional

Output (digital) for


Bit 11

LD

D12

Variable

Optional

Output (digital) for


Bit 12

LD

D13

Variable

Optional

Output (digital) for


Bit 13

LD

D14

Variable

Optional

Output (digital) for


Bit 14

LD

D15

Variable

Optional

Output (digital) for


Bit 15

LD

REF_1100

5.132 VCLTP

5.132 VCLTP
Description
VCLTP calculates Specific Volume of Compressed Liquid given its Temperature and Pressure. It
is one of the functions of the STEAMTABLE algorithm (see page 492).
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
VCLTP input and output values
P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

TEMP

32.0

705.47

(INPUT 2)

PRES

0.0885891400

16000.00

(INPUT 3)

PRAT

* Pressures are added together.

(OUT 1)

VOL

0.0152

0.05078

Note: PRAT is set from 12 to 16 psi.

REF_1100

531

5.133 VSLT

5.133 VSLT
Description
VSLT calculates Specific Volume of Saturated Liquid given its Temperature. It is one of the
functions of the STEAMTABLE algorithm (see page 492).
Functional Symbol

The following table represents the lower and upper limits of valid values for the algorithm.
However, the calculated output values may be invalid even though the input values are valid.
In the following table, all values are in English units.
VSLT input and output values

532

P ARAM ETER

PROPERTY

LOW V ALUE

HIGH V ALUE

(INPUT 1)

TEMP

32.0

705.47

(OUT 1)

ENTR

-0.000036890

1.0612

REF_1100

5.134 XOR

5.134 XOR
Description
The XOR algorithm performs a mathematical exclusive OR function. For the XOR algorithm, the
output is the logical, exclusive OR of the two inputs (that is, if one input is TRUE and the other
input is FALSE, the output is TRUE; otherwise, the output is FALSE).
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (digital)

LD, LP

IN2

Variable

Required

Input (digital)

LD, LP

OUT

Variable

Required/

Output (digital)

LD, LP

Optional

Note: Output is required if connecting to anything other than OR or AND.


Function
IF IN1 = IN2
THEN OUT = FALSE
ELSE
OUT = TRUE

REF_1100

533

5.135 X3STEP

5.135 X3STEP
Description
The X3STEP algorithm controls devices that must be kept within a certain tolerance and tuned by
an operator. The algorithm receives the position feedback (IN2) of a device (such as a valve). The
position valve is subtracted from the Input demand signal passed as the IN1 Input. The difference
(Error), along with other user-entered configuration parameters determine how the algorithm
attempts to position the equipment so that the error is zero.
The algorithm moves the equipment by energizing two digital outputs (DIG1 and DIG2)
associated with the device. The digital outputs may be energized in one of three ways (thus the
algorithm's name X3STEP) to move the device to the demanded position:

Maintained steadily ON

Pulsed ON and OFF

Maintained steadily OFF

Functional Symbol

The action of each digital output depends on the value of the error, and the user-entered
parameters: ON1, COR1, FNE1, ON2, COR2, and FNE2.
The parameters ON1, COR1, and FNE1, affect DIG1 when the error is above zero. The
parameters ON2, COR2, and FNE2, affect DIG2 when the error is below zero. The bar graph
below shows the relationship of the parameters with respect to the error.

% Error below zero

% Error above zero

------------------------------------------------------ON2

534

COR2

FNE2

FNE1

COR1

ON1

REF_1100

5.135 X3STEP
where:
FOR DIG2

FOR DIG1

ON2 = If the error is below or equal to ON2, the


digital output DIG2 is maintained ON.

ON1 = If the error is above or equal to ON1 the


digital output DIG1 is maintained ON.

COR2 = If the error is below or equal to COR2, the


digital output DIG2 is coarse pulsed.

COR1 = If the error is above or equal to COR1, the


digital output DIG1 is coarse pulsed.

FNE2 = If the error is below or equal to FNE2, the


digital output DIG2 is fine pulsed. If the error is below
zero, but above FNE2, DIG2 is maintained OFF.

FNE1= If the error is above or equal to FNE1, the


digital output DIG1 is fine pulsed. If the error is
above zero, but above FNE1, DIG1 is maintained
OFF.

Operation
Suppose an X3STEP algorithm had the following parameters:

ON2

COR2

FNE2

FNE1

COR1

ON1

-----------------------------------------------------------15

-12

-8

12

15

If the initial error is above or equal to 15, the digital output (DIG1) is set ON. DIG1 is maintained
on until the error falls below 15. At this point, the DIG1 output begins and continues coarse
pulsing until the error is below 12. Once this occurs, the DIG1 output begins and continues fine
pulsing until the error is below 8. When this occurs, DIG1 is set OFF. Please note that the
converse of the above definitions are TRUE when the error is below 0.
In general, X3STEP turns off both its digital outputs when it detects errors in configuration or
operation. They remain off until the error conditions clear. Also, when errors occur, OUT is not
updated but retains its last valid value. The digital outputs are both set off under any of the
following conditions:
1. The IN1 input has BAD quality, is an invalid real number, or is not being updated across the
Ovation network.
2. The IN2 input has BAD quality, is an invalid real number, or is not being updated across the
Ovation network.
3. The digital input DEVO is set indicating that there is a problem with the device.
4. The error is zero or below FNE1 for DIG1. The error is zero or above FNE2 for DIG2.
5. An on time span of 0 or less is invalid. This invalid configuration is reported by setting the
quality of OUT to BAD and setting bit 3 of its 1W field. This error is reported at runtime.
6. The algorithm has been incorrectly configured by setting ON1, COR1, FNE1, or ON2, COR2,
and FNE2 all to zero. This invalid configuration is reported by setting the quality of OUT to
BAD and bit 3 of its 1W field. This error is reported at runtime.The outputs are set to 0 for one
execution loop under any of the following conditions:
The Controller is reset (hardware or software reset).
A failover occurs.

REF_1100

535

5.135 X3STEP
The algorithm is modified and downloaded.
Tracking Signals
This algorithm ignores the TRIN tracking signals. During first pass after a reset, or failover, and
anytime the DEVO digital is TRUE, Bit 16 of TOUT is set TRUE causing the upstream algorithm
to track OUT. Bit 16 of TOUT is set FALSE at all other times.
Bits 20 and 31 of TOUT are set ON when the IN2 value reaches 100 percent or greater. This
indicates the algorithm has reached the High Limit and requests the upstream algorithm to inhibit
raising the output.
Bits 19 and 30 of TOUT are set ON when the IN2 value reaches 0 percent or less. This indicates
that the algorithm has reached the Low Limit and requests the upstream algorithm to inhibit
lowering the output. All other bits (17-18 and 21-29) of TOUT are not used.
The TOUT value output is set equal to OUT and its quality is always set to GOOD.
Algorithm Configurations
1. To maintain the digital outputs ON at all times when the error is not zero,
set the following:
ON1
or ON2 > 0 (Set ON1 or ON2 very close to zero)
FNE1 or FNE2 = 0
COR1 or COR2 = 0
2. This configuration causes DIG1 to be on when the error is above ON1. DIG2 is on when the
error is below ON2. To eliminate coarse pulsing of a digital, set:
COR1 or COR2 = 0
Assumes a non-zero value for ON1, ON2, FNE1, and FNE2. FNE1 is less than ON1 and
FNE2 is greater than ON2.
If the error is initially above ON1 (or below ON2), the digital remains on until the error falls
below ON1 (or above ON2). When this occurs and COR1 (or COR2) equals zero, coarse
pulsing is ignored and fine pulsing begins. Fine pulsing continues until the error is below
FNE1 (or above FNE2). At this point the digital is maintained OFF.
3. To eliminate fine pulsing of a digital, set:
FNE1

or FNE2

=0

Assumes a non-zero value for ON1, ON2, COR1, and COR2. COR1 is less than ON1 and
COR2 is greater than ON2.
If the error is initially above ON1 (or below ON2), the digital remains on until the error falls
below ON1 (or above ON2). At this point, coarse pulsing begins and is maintained until the
error falls below COR1 (or above COR2). When this occurs and FNE1 (or FNE2) equals zero,
fine pulsing is ignored and the digital is maintained OFF.
4. To eliminate maintaining the digital outputs on steady when the error is not zero, set:
ON1

or ON2

=0

Assumes a non-zero value for COR1, COR2, FNE1, or FNE2. If the error is initially above
COR1 (or below COR2), the digital is pulsed coarsely until the error is below COR1 or
(COR2). When this occurs, fine pulsing begins and continues until the error falls below FNE1
(or above FNE2). At this point the digital is maintained OFF.

536

REF_1100

5.135 X3STEP
5. The ON and OFF times for the coarse and fine pulses are determined from the user-entered
off time and on time span tuning fields.
6. IN2 is the position feedback. In this case OUT is assigned the value of IN2. If IN2 is less than
zero, a value of zero is used for the position feedback.
If IN2 is greater than 100, a value of 100 is used. If IN2 has BAD quality, or is an invalid real
number, OUT retains its last valid value. OUT's quality is set to BAD. The quality of OUT and
its 1W field report algorithm error conditions are described below:
OUT QUALITY

1W BIT SET

DESCRIPTION

GOOD

NONE

Normal Operation

BAD

NONE

The position feedback IN2 has BAD quality.

BAD

Bit 3

Invalid configuration has been entered. BAD


parameter (ON1, COR1, FNE1, ON2, COR2, FNE2)
or time span (CTM1, FTM1, CTM2, FTM2) or on
time/off time (FDY1, FDY2, CDY1, CDY2).

Tuning Constants
1. COR1 must always be set less than ON1, and COR2 must always be set greater than ON2
for proper operation. The algorithm does not check for this invalid configuration.
2. FNE1 must always be set less than COR1, and FNE2 must always be set greater than COR2
for proper operation. The algorithm does not check for this invalid configuration.
3. Set CTM1, CTM2, FTM1, FTM2 (time spans for pulsing) in multiples of the Controller's loop
time.
If CTM1, CTM2, FTM1, and FTM2 and the accompanying ON and OFF times that are less than
one loop time, the algorithm assumes those times are equal to one loop time.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

Required

58

Tuning Diagram.

MIN.
POINT
RECORD

IN2

Variable

Required

Analog Input - this is the


positive feedback from
the device.

LA

IN1

Variable

Required

Analog Input in percent


(0-100). This is the
demand value for the
device.

LA

REF_1100

537

5.135 X3STEP

N AM E

TOUT

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

Variable

Required

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Bit 16 is set TRUE during


the first pass and when
DEVO input is TRUE.
Typically used for
initializupsteam PID
algorithm to accomplish
bumpless transfer.

LA

Bit 19 and 30 indicate


POS is at low limit
Bit 20 and 31 indicate
POS is at high limit.
Contains the value of the
position feedback signal.
The quality of TOUT is
always GOOD; sensor
errors are not reported.
Used to initialize upsteam
PID algorithms with
bumptransfer.
DEVO

Variable

Optional

LP

Packed Point; Bit 0


indithe operational state
of the device being
conwhere:
0 = operational
1 = non-operational

538

ON1

T9-Real

Tuning
Constant

10

Steady on limit (amount


of error above 0 at which
DIG1 turns ON)

COR1

S1-Real

Tuning
Constant

Coarse on limit (amount


of error above 0 at which
DIG1 begins coarse
pulsing)

FNE1

T1-Real

Tuning
Constant

Fine on limit (amount of


error above 0 at which
DIG1 begins fine pulsing)

ON2

U1-Real

Tuning
Constant

-10

Steady on limit (amount


of error above 0 at which
DIG2 turns ON)

COR2

S2-Real

Tuning
Constant

-5

Coarse on limit (amount


of error above 0 at which
DIG2 begins coarse
pulsing)

FNE2

T2-Real

Tuning
Constant

-2

Fine on limit (amount of


error above 0 at which
DIG2 begins fine pulsing)

CTM1

S6-Real

Tuning
Constant

2000

Coarse on-time span in


msec. for DIG1.

REF_1100

5.135 X3STEP

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

CDY1

S7-Real

CTM2

DESCRIPTION

MIN.
POINT
RECORD

Tuning
Constant

2000

Coarse off-time span in


msec. for DIG1.

S8-Real

Tuning
Constant

2000

Coarse on-time span in


msec. for DIG2.

CDY2

S9-Real

Tuning
Constant

2000

Coarse off-time span in


msec. for DIG2.

FTM1

T4-Real

Tuning
Constant

1000

Fine on-time span in


msec. for DIG1.

FDY1

T5-Real

Tuning
Constant

1000

Fine off-time span in


msec. for DIG1.

FTM2

T6-Real

Tuning
Constant

1000

Fine on-time span in


msec. for DIG2.

FDY2

T7-Real

Tuning
Constant

1000

Fine off-time span in


msec. for DIG2.

OUT

Variable

Contains the value of the


position feedback signal.
The quality and IN field of
OUT are used to report
error conditions.

LA

TRIN

Variable

Optional

Tracking and limiting


mode. Signals, tracking
value, analog input
variable.

LA

DIG1

Variable

Required

Digital Output1

LD

DIG2

Variable

Required

Digital Output2

LD

REF_1100

539

5.136 2XSELECT

5.136 2XSELECT
Description
The 2XSELECT algorithm monitors two analog transmitter inputs for quality and deviation from
each other. The output is either one of the two input values; the higher value, the lower value, or
the average of the two values, depending on the mode selected. You select the mode through the
use of the TMOD and MODE tracking inputs, the Operators Keyboard function keys, or the
Control Builder.
Functional Symbol

540

REF_1100

5.136 2XSELECT
The Control Indicator Word is used to specify which of the Average, Lower and Higher modes are
inhibited, and the type of quality of the input that sets the Quality Alarm for that point. The
Average, Lower, and Higher modes cannot be selected if they are inhibited by the Control
Indicator Word, or when either of the transmitters is in Quality Alarm, or when the deviation
between the two transmitter values is greater then the Control Deviation Deadband tuning
constant (CNDB).
The Transmitter A mode cannot be selected when Transmitter A is in Quality Alarm and
Transmitter B is not in Quality Alarm. The algorithm goes to Transmitter A mode when both
transmitters are in Quality Alarm, or when Transmitter B is in Quality Alarm. The Transmitter B
mode cannot be selected when Transmitter B is in Quality Alarm. The algorithm goes to
Transmitter B mode when Transmitter A is in Quality Alarm and Transmitter B is not in Quality
Alarm.
On the first pass of the algorithm, if the Tracking Input (MODE) is initialized by the user, the mode
is set according to the rounded value of the tracking input as follows:
MODE V ALUE

MODE SELECTED

Average

Lower

Higher

Transmitter A

Transmitter B

If the rounded value of the tracking input is not 1 through 5, or if the tracking input was not
initialized, the mode is set to Average mode. If the mode selected on the first pass is inhibited, or
if it is blocked by a Quality Alarm or a Deviation Alarm, as described above, the mode is set to the
next lowest priority mode (where the Average mode has the highest priority and Transmitter B
mode has the lowest priority) until a mode is selected that is not inhibited or blocked. If both
transmitters are in Quality Alarm, the output of the algorithm latches onto the last good value and
the mode is set to the Transmitter A mode.
If the Tracking Mode Request digital input (TMOD) is initialized, the mode is set according to the
rounded value of the tracking input and the above table when the Tracking Mode Request signal
is TRUE and there are no Quality Alarms. The mode remains unchanged if the rounded value of
the tracking input is not 1 through 5 when the Tracking Mode Request signal is TRUE.
You may select a different mode by using the function keys on the Operators Keyboard when the
Tracking Mode Request signal is FALSE. The value of the analog output (OUT) is according to
the mode of the algorithm:
MODE

OUTPUT V ALUE

Average

Average value of the two transmitter input values.

Lower

Lower value of the two transmitter input values.

Higher

Higher value of the two transmitter input values.

Transmitter A

Value of Transmitter A.

Transmitter B

Value of Transmitter B.

REF_1100

541

5.136 2XSELECT
The Transmitter Deviation Alarm digital output (XDEV) is set TRUE when the deviation between
the two transmitter values is greater than the Alarm Deviation Deadband tuning constant (ALDB),
or when one or both transmitters contain invalid real numbers.
The Transmitter A Quality Alarm digital output (XABQ) is set TRUE when the quality of the
Transmitter A analog input goes BAD or NOT GOOD, depending on the Quality Alarm Type flag.
The Transmitter B Quality Alarm digital output (XBBQ) is set TRUE when the quality of the
Transmitter B analog input point goes BAD or NOT GOOD, depending on the Quality Alarm Type
flag.
The Transmitter Malfunction Alarm digital output (XALM) is set TRUE when there is a Quality
Alarm on either of the two signals, when one or both input points contain invalid values, or when
the deviation between the two transmitter values is greater than the Control Deviation Deadband
tuning constant (CNDB).
The Manual Reject digital output (MRE) is set TRUE when both transmitters are in Quality Alarm,
or when the deviation between the two transmitter values is greater than the Control Deviation
Deadband tuning constant (CNDB). The P3 function key on the Operators Keyboard toggles the
inhibiting of the deviation check. For example, by pressing the P3 function key on the Operators
Keyboard, the Manual Reject output is only set TRUE when both transmitters are in Quality
Alarm. Then, by pressing the P3 function key again, the Manual Reject output is set TRUE when
both transmitters are in Quality Alarm or when the deviation is too large.
The packed digital output signal (PBPT) contains the Quality Alarms for both transmitters, the
Manual Reject output, the Transmitter Malfunction Alarm, the Tracking Request signal, the mode
of the algorithm, and the state of the Inhibit Control Deviation Alarm Check for the MRE digital
output feature.
The HOLD parameter holds the output value and quality for a desired number of loops when a
manual reject occurs.
Note: The information in the packed digital output signal is also stored in the B7 field of the
algorithm record.
When using the RATE or DBNB parameters, the following apply:

542

2XSELECT ramps at the user-entered rate (specified in Units/Sec. via the RATE template
parameter) during mode changes. If no entry is made in the RATE parameter or a value of 0
is entered, 2XSELECT changes its output value to the new value during mode changes.

2XSELECT returns from a deviation (XDEV) condition (that is, when the absolute difference
between the XA and XB inputs is greater than the ALDB parameter) only when absolute
difference between the XA and XB inputs return to a value which is less than or equal to
Alarm Limit Deadband (ALDB) minus DBND. If no entry is made in the DBND parameter or a
value of 0 is entered, 2XSELECT returns from an XDEV condition.

2XSELECT returns from a CNDB condition (that is, when the absolute difference between the
XA and XB inputs is greater than the CNDB parameter) only when absolute difference
between the XA and XB inputs return to a value which is less than or equal to CNDB minus
DBND. If no entry is made in the DBND parameter or a value of 0 is entered, 2XSELECT
returns from a CNDB condition.

REF_1100

5.136 2XSELECT

The interface keys on the Operators Keyboard are:


FUNCTION KEY

USE

P1

Transmitter A mode request.

P2

Transmitter B mode request.

P3

Toggle the inhibiting of the Control Deviation Alarm check on the


manual reject (MRE) output.

P4

Average mode request.

P5

Lower mode request.

P6

Higher mode request.

Invalid Numbers and Quality


The transmitter input values to the algorithm are checked for invalid real numbers. If a transmitter
contains an invalid value, its Quality Alarm digital output is set TRUE.
If both transmitters are in Quality Alarm, or contain invalid values, the value of the algorithm
output (OUT) quality is set to BAD.
If the algorithm calculates an invalid real number for the output, the quality of the output is set to
BAD and the output value is invalid.
INSEL parameter
The INSEL parameter determines which inputs of the 2XSELECT algorithm are being used to
calculate the output. The Signal Diagram application displays green circles around the active pins.
If none of the pins are selected, then nothing will display. You can also view this information via
the Process Diagram System graphics as well. Refer to Ovation Operator Station User Guide for
more information on the Signal Diagrams application and the Process Diagram System graphics.
The 2XSELECT algorithm activates individual bits in the Y0 field depending on the conditions in
the description field. If a signal is active, that signal is being used in the output calculation.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Tuning
Constant

Required

99

Tuning diagram number.

Selectable

Optional

Input (analog); tracks


the algorithm to a mode
on first pass and when
TMOD is TRUE. This
point must be initialized
if the TMOD point is
initialized.

MODE

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

LA

543

5.136 2XSELECT

N AM E

TMOD

CNTL

LC ALG.
RECORD
FIELD

G0-Integer

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

Data Init.

Optional

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Input (digital); request to


track the mode to the
value of MODE. If this
point is initialized, the
MODE point must also
be initialized.

LD, LP

Control Indicator Word


(bit and description):

0 - Average Selection
(0 = Not allowed
1 = Allowed)
1 - Lower Selection
(0 = Not allowed
1 = Allowed)
2 - Higher Selection
(0 = Not allowed
1 = Allowed)
3 - Quality Alarm Type
(0 = BAD Quality Alarm
1 = NOT GOOD Quality
Alarm)

544

ALDB

R1-Real

Tuning
Constant

Required

0.0

Alarm Deviation
Deadband.

CNDB

R2-Real

Tuning
Constant

Required

0.0

Control Deviation
Deadband.

RATE

R3-Real

Tuning
Constant

Optional

0.0

Ramping rate
parameter.

DBND

R4-Real

Tuning
Constant

Optional

0.0

Deadband delta
parameter.

HOLD

X7-Byte

Data Init

Required

Hold output during


manual reject.

XA

Variable

Required

Input (analog);
Transmitter A.

LA

XB

Variable

Required

Input (analog);
Transmitter B.

LA

XDEV

Variable

Optional

Output (digital);
Transmitter Alarm
Deviation signal.

LD, LP

XABQ

Variable

Optional

Output (digital); Quality


Alarm for Transmitter A.

LD, LP

XBBQ

Variable

Optional

Output (digital); Quality


Alarm for Transmitter B.

LD, LP

REF_1100

5.136 2XSELECT

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

XALM

Variable

Optional

Output (digital);
Transmitter Malfunction
Alarm.

LD, LP

MRE

Variable

Optional

Output (digital); Manual


Reject signal.

LD, LP

OUT

Variable

Required

Output (analog).

LA

PBPT

Variable

Optional

Output (packed digital)


(bit and description):

LP

0 - Manual Reject
Output signal.
1 - Transmitter
Malfunction Alarm.
2 - Inhibit Control
Deviation Check for
MRE output.
3 - Quality Alarm for
Transmitter A.
4 - Quality Alarm for
Transmitter B.
5 - Mode selection being
made by TMOD.
6 - Transmitter Alarm
Deviation signal.
7 - Average mode.
8 - Lower mode.
9 - Higher mode.
10 - Transmitter A
mode.
11 - Transmitter B
mode.

REF_1100

545

5.136 2XSELECT

N AM E

INSEL*

LC ALG.
RECORD
FIELD
Y0

TYPE

REQUIRED/
OPTIONAL

Alg. Init.

Required

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Input Selected:

--

Bit 1 - Signal A
0 = Not Active
1 = Active
Bit 2 - Signal B
0 = Not Active
1 = Active
* If no inputs are selected, it indicates one of the following:
the inputs are all BAD quality.
the output is scan removed.
Manual Reject is activated with HOLD.
the calculated output is invalid.

546

REF_1100

E C T I O N

Q-Line algorithms

IN THIS SECTION
What are Q-Line algorithms? .......................................................................................... 547
PVSPSLI ......................................................................................................................... 548
PWDIN ............................................................................................................................ 551
QLIPASS ......................................................................................................................... 554
QPACMD......................................................................................................................... 558
QPACMPAR....................................................................................................................564
QPASTAT........................................................................................................................ 566
QSDDEMAND ................................................................................................................. 567
QSDMODE......................................................................................................................569
QSRMA ........................................................................................................................... 570
QVP................................................................................................................................. 577
XFLOW............................................................................................................................ 580
XMA2............................................................................................................................... 587
XML2 ............................................................................................................................... 598
XPIDSLI........................................................................................................................... 602

6.1

What are Q-Line algorithms?


Q-Line algorithms are algorithms that are used specifically with Q-Line I/O hardware in an Ovation
system. These algorithms are the only Q-Line algorithms supported in Ovation. They can be
added to an Ovation control sheet by the Ovation Control Builder and then used in your Ovation
control scheme.
The Q-Line reference pages use the same format as the Standard Ovation algorithm reference
pages (see page 48).

REF_1100

547

6.2 PVSPSLI

6.2

PVSPSLI
Description
The PVSPSLI algorithm writes the functional processor-defined process variable (PVAR) and/or
set point (STPT) values to the Q-Line Loop Interface (QLI) for display at the Loop Interface
Module (LIM). These analog inputs must be of type AC or greater so that the top of bar, bottom of
bar, and engineering units fields may be used to initialize the configuration data sections of the
QLI card for the process variable and set point values. The top of bar and bottom of bar fields
from each input are also used to scale the values to be written to the card.
Symbol

You specify which values are written to the QLI card by initializing the bits in the configuration
byte parameter (INIT). This information and the appropriate values are written to the QLI card. If
the algorithm is initialized to perform the special functional processor-defined process variable for
the QLI card, do not use an XFLOW algorithm configured to interface to the same QLI card, and
do not configure the QLI card as a massflow card-type. Also, if the algorithm is initialized to
perform the special functional processor-defined set point for the QLI card, do not use the
XPIDSLI algorithm to interface to the same QLI card.
If this algorithm is initialized to write the functional processor-defined set point to the QLI card,
then the QLI no longer raises or lowers the set point value in response to raise/lower requests
from the LIM. If you desire to have raise and lower set point requests from the LIM, and XML
algorithm, configured to interface to the same QLI card, must be used. Refer to the description of
the XML2 algorithm (see page 598).
Bit 10 is set in the second status word of the digital output (STAT) for one loop whenever the
process variable (flow configuration) or the set point configuration data sections are reconfigured.
This does not affect the quality of the digital point (that is, the quality is not set BAD when the QLI
is reconfigured).

548

REF_1100

6.2 PVSPSLI

The digital output point is set TRUE and the quality of the digital output is BAD if invalid values or
any hardware errors are detected when either the process variable or the set point information is
written to the QLI card. The following hardware errors are reported in the second status word of
the digital output (STAT):
BIT

DESCRIPTION
0

Invalid hardware address. User-specified hardware address outside legal range of 0 to 3FCH.

Write verification error. The algorithm tried to reconfigure either the process variable or set
point section of the card, but was unable to do so.

Bad hardware status. The power and card OK bits on the QLI card were not set.

QLI configuration error. The algorithm tried to reconfigure the QLI card for two consecutive
loops. This could be caused by another algorithm having the same QLI address, where both
algorithms are trying to reconfigure the same section on the QLI card.

Normalization error. Input point to be written to the QLI card contains an invalid real number.

Invalid Numbers and Quality


The process variable (PVAR) and set point (STPT) inputs are checked for invalid real numbers.
The QLI Card retains its last valid value if the point chosen to be written to the QLI card contains
an invalid value.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

PVAR

--

Variable

Required

--

Input (analog);
process variable

LA

STPT

--

Variable

Required

--

Input (analog); set


point

LA

CARD

X4 - Byte

Data Init.

Required

PCI card number (1,


2)

--

HWAD

B2 - Integer

Data Init.

Required

--

Hardware address of
QLI card (in decimal
bytes)

--

REF_1100

549

6.2 PVSPSLI

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

INIT

X1 - Byte

Data Init.

Required

DEFAULT
VALUE
--

DESCRIPTION

Configuration byte.
Only bits 1 and 0 are
used.

MIN.
POINT
RECORD
--

0 = No action
1 = Functional
processor-defined
process variable
2 = Functional
processor-defined set
point
3 = Functional
processor-defined
variable and set point
PVTP

R1 - Real

Variable

Required

100.0

PVBT

R2 - Real

Variable

Required

0.0

PVEU1

AK - ASCII

Variable

Required

PCT

Process EU

STTP

R3 - Real

Variable

Required

100.0

Setpoint top of scale

--

STBT

R4 - Real

Variable

Required

0.0

Setpoint bottom of
scale

--

STEU

G5 - Integer

Variable

Optional

Setpoint - Holding
register

--

STEU1

A5 - ASCII

Variable

Optional

PCT

Setpoint -- EU

--

Variable

Required

--

STAT

550

--

Process variable top


of scale

--

Process variable
bottom of scale

--

Output (digital); QLI


card hardware status

LD, LP

REF_1100

6.3 PWDIN

6.3

PWDIN
Description
The PWDIN algorithm converts a digital pulse to an analog value proportional to the width of the
pulse. A QSE Card is used to time tag a digital signals transition from FALSE to TRUE and then
from TRUE to FALSE. The time difference between these two events is the pulse width, which
may vary from a minimum of 5 msec to a maximum of 65 sec. The pulse width is then multiplied
by a scaling factor to obtain the output analog value. (The output analog value is always zero,
except in the loop where the TRUE to FALSE transition occurs. In this loop, the width is
calculated and its value is output.)
Note: The PWDIN algorithm must run in a 300 millisecond or faster task area.
Functional Symbol

REF_1100

551

6.3 PWDIN
The digital outputs of the algorithm are used to reflect the current state of their corresponding
digital signals on the QSE Card.
The second status word of each digital output indicates error conditions; Bit 0 is set when an
invalid QSE Card hardware address is used, while Bit 2 is set when the QSE Card is bad.
Bit 2 of the second status word of an analog output is set when an event is missed for that point.
Note: The use of PWDIN for a particular QSE card precludes the use of any of the points in this
card for SOE purposes. The remaining bit positions on this QSE Card may be used as regular,
digital inputs (DI records).
Algorithm Record Type = LC
Algorithm Definitions

552

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU - Byte

Data Init.

Optional

--

Tuning diagram
number (default value
= 5)

--

PCI

X4 - Byte

Data Init.

Required

PCI card number (1, 2)

--

HWAD

B2 - Integer

Data Init.

Required

--

Hardware address of
the QSE card

--

NUM

X1 - Byte

Data Init.

Required

--

Number of QSE
digitals to be monitored
(maximum of four; bit
positions 0 through 3 of
the QSE card

--

CON1

R1 - Real

Tuning
Constant

Required

--

Scaling factor for


OUT1. CON1 is
multiplied by the pulse
width in seconds to
calculate the output
value.

--

CON2

R2 - Real

Tuning
Constant

Required

--

Scaling factor for


OUT2. CON1 is
multiplied by the pulse
width in seconds to
calculate the output
value.

--

CON3

R3 - Real

Tuning
Constant

Required

--

Scaling factor for


OUT3. CON1 is
multiplied by the pulse
width in seconds to
calculate the output
value.

--

REF_1100

6.3 PWDIN

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

CON4

R4 - Real

Tuning
Constant

Required

--

Scaling factor for


OUT4. CON1 is
multiplied by the pulse
width in seconds to
calculate the output
value.

MIN.
POINT
RECORD
--

OUT1

--

Variable

Required

--

Output (analog)

LA

OUT2

--

Variable

Required

--

Output (analog)

LA

OUT3

--

Variable

Required

--

Output (analog)

LA

OUT4

--

Variable

Required

--

Output (analog)

LA

DIG1

--

Variable

Required

--

Output (digital)

LD

DIG2

--

Variable

Required

--

Output (digital)

LD

DIG3

--

Variable

Required

--

Output (digital)

LD

DIG4

--

Variable

Required

--

Output (digital)

LD

REF_1100

553

6.4 QLIPASS

6.4

QLIPASS
Description
The QLIPASS algorithm changes the default station (or loop) number and password number for
up to 12 QLI cards. It is used under two conditions:

If there is more than one Q-Line Loop Interface (QLI) card per Loop Interface Module (LIM),
this algorithm is needed to assign a particular station (or loop) number to a QLI card. This
station (or loop) number is selected at the LIM to display values from the specified QLI card.

If tuning of the PID gain, reset time, derivative gain and rate parameters from the LIM is
desired, a password must be set up. The valid range for passwords is 0 through OFFFFH, or
0 through 65,535 (although LIM tuning will be locked out for passwords exceeding 9999
decimal).

Functional Symbol

CNT =

B0=

C0=

D4=

E8=

B1=

C1=

D5=

E9=

B2=

C6=

D6=

F0=

B3=

C7=

D7=

F1=

B4=

C8=

E2=

F2=

B5=

C9=

E3=

F3=

B6=

D0=

E4=

B7=

D1=

E5=

B8=

D2=

E6=

B9=

D3=

E7=

The value of the STAT output variable is TRUE if an invalid hardware address, a write verification
error, or a QLI configuration error is detected for any QLI specified. If no errors are detected in
any QLIs, the value of STAT is FALSE.
The second status word of the STAT output variable contains the group status of up to 12 QLI
cards. Up to four bits can be set by any of 12 QLI cards as follows:
BIT

554

DESCRIPTION
0

Invalid hardware address; specified address is out of range (2<= QLI address <=
3F0H)

Write verification error that can be caused by:


No power in QLI
No QLI card at specified address
An unsuccessful QLI configuration attempt

REF_1100

6.4 QLIPASS

BIT

DESCRIPTION
3

QLI configuration error caused by two consecutive configuration updates. This


could be caused by another algorithm having the same QLI address, where both
algorithms are trying to reconfigure the same section on the QLI card.

10

Configuration update this loop.

The first 12 bits of the PNTS packed group, output record represent the status of the 12 possible
QLI cards. For a bit not scan-removed, that bit will be set for any of the following conditions:

Bad hardware address

Configuration data update

QLI configured on two consecutive loops

Write verification error

Rules
1. When assigning station numbers, the final (maximum) station number should be specified as
a negative number. For example, if there are nine stations assigned to one LIM, the ninth
station should be added to the template as - 9. This will signal the LIM to loop from Station 1
through Station 9, and back to Station 1.
2. When adding an additional QLI loop to a LIM (thereby, increasing the last station number
used), it is necessary to recycle power on the LIM and select the new final loop at the LIM.
This enables the LIM to sequence from Station 1 through the new station number, and back to
Station 1.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

CNT

X1 - Byte

Data Init.

Required

--

Number of QLI cards


to be initialized

--

CARD

X4 - Byte

Data Init.

Required

PCI card number (1,


2)

--

AD01

B0 - Integer

Tuning
Constant

Required`

--

Hardware address for


QLI No. 1

--

ST01

C6 - Integer

Tuning
Constant

Required

--

Station number for


QLI No. 1

--

PS01

E2 - Integer

Tuning
Constant

Required

--

Password for QLI No.


1

--

AD02

B1 - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 2

--

ST02

C7 - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 2

--

PS02

E3 - Integer

Tuning
Constant

Optional

--

Password for QLI No.


2

--

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

555

6.4 QLIPASS

556

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

AD03

B2 - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 3

--

ST03

C8 - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 3

--

PS03

E4 - Integer

Tuning
Constant

Optional

--

Password for QLI No.


3

--

AD04

YU - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 4

--

ST04

YT - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 4

--

PS04

YC - Integer

Tuning
Constant

Optional

--

Password for QLI No.


4

--

AD05

B4 - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 5

--

ST05

D0 - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 5

--

PS05

Y9 - Integer

Tuning
Constant

Optional

--

Password for QLI No.


5

--

AD06

B5 - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 6

--

ST06

YQ - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 6

--

PS06

E7 - Integer

Tuning
Constant

Optional

--

Password for QLI No.


6

--

AD07

B6 - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 7

--

ST07

D2 - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 7

--

PS07

E8 - Integer

Tuning
Constant

Optional

--

Password for QLI No.


7

--

AD08

B7 - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 8

--

ST08

YP - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 8

--

PS08

Y8 - Integer

Tuning
Constant

Optional

--

Password for QLI No.


8

--

AD09

B8 - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 9

--

ST09

D4 - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 9

--

PS09

Y7 - Integer

Tuning
Constant

Optional

--

Password for QLI No.


9

--

AD10

B9 - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 10

--

REF_1100

6.4 QLIPASS

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

ST10

D5 - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 10

--

PS10

Y6 - Integer

Tuning
Constant

Optional

--

Password for QLI No.


10

--

AD11

C0 - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 11

--

ST11

D6 - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 11

--

PS11

XY - Integer

Tuning
Constant

Optional

--

Password for QLI No.


11

--

AD12

C1 - Integer

Tuning
Constant

Optional

--

Hardware address for


QLI No. 12

--

ST12

YN - Integer

Tuning
Constant

Optional

--

Station number for


QLI No. 12

--

PS12

XY - Integer

Tuning
Constant

Optional

--

Password for QLI No.


12

--

STAT

--

Variable

Required

--

Output (digital)

LD, LP

PNTS

--

Variable

Required

--

Output (packed
group)

LP

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

557

6.5 QPACMD

6.5

QPACMD
Description
QPACMD writes a command byte to the QPA Card. The command byte may be written to a
particular QPA Card or to many cards through a group write address. The group write address
must be between 0x1F8 and 0x1FF. If the GADR parameter is initialized, the group write address
is used; otherwise, the hardware address from the IN1 record is used.
The bits in the command byte are set or reset according to the data initialization parameters
FRZ0, STR0, RST0, FRZ1, STR1, and RST1. If the command byte is to be written to a particular
card and a parameter is zero, the corresponding bit in the command byte remains unchanged
from its present value. When writing to the group write address, each bit must be set or reset and
both counters on all the cards with that group write address are affected. The digital input signal
(RUN) must be TRUE for the algorithm to execute.
Note: If QPASTAT is used in conjunction with QPACMD, make sure that QPASTAT runs before
QPACMD. Otherwise, the flag CMPF in QPASTAT clears prematurely.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions

558

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

GADR

G0 Integer

Data Init.

Optional

Group Write Offset Write

FRZ0

X1 Byte

Data Init.

Optional

Freeze/unfreeze selector for Counter


0

CNTR

CNTR

GADR

Select.

Address

Address

No Action

Unfreeze

Freeze

Freeze

Unfreeze

Unfreeze

REF_1100

6.5 QPACMD

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

STR0

X2 Byte

Data Init.

Optional

RST0

FRZ1

RST1

X3 Byte

X4 Byte

X6 Byte

Data Init.

Data Init.

Data Init.

Optional

Optional

Optional

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Start/Stop selector for


Counter 0
CNTR

CNTR

Select.

Address

GADR
Address

No Action

Stop

Start

Start

Stop

Stop

Reset selector for Counter 0

CNTR

CNTR

GADR

Select.

Address

Address

No Action

No Action

Reset

Reset

Freeze/unfreeze selector for Counter


1
CNTR

CNTR

Select.

Address

GADR
Address

No Action

Unfreeze

Freeze

Freeze

Unfreeze

Unfreeze

Reset selector for Counter 1

CNTR

CNTR

GADR

Select.

Address

Address

No Action

No Action

Reset

Reset

IN1

Variable

Required

Input (analog)

LA

RUN

Variable

Required

Input (digital)

LD

REF_1100

559

6.5 QPACMD
Application Example
Three algorithms can access the QPA card: QPACMD, QPASTAT, and QPACMPAR. This is one
example of how to use the QPACMD command (see QPACMPAR (see page 564) for another
example).
In this example, a QPA card is used to count a pulsed input. The input is a count of contact
closures from a megawatt meter. The number of megawatts per pulse is accounted for in the
coefficients that are calculated as part of the point record.
Be careful when selecting hardware addresses for QPA cards. They require four consecutive
addresses each, even though there are only two inputs for each card. The extra two addresses
are used for control and status word transfer. In this example, the QPA card is located in the first
slot of Q-crate 1 in a Controller (where: half-shell = A1 and card hardware address = 0x80).
In this example, the input for Counter 1 (IN1) is assigned analog point EW1. This is the second
card input. Counter 0 uses the first card input.
IN1 must be initialized as an analog input point in the Controller. The following is an example of
such a point (EW1).
FIELD

VALUE
RT

LA

EU

MWH

ED

MWH To PHOSIE- ACBNO1

CV

IV

0.6

2V

0.0

Other points needed by algorithms used in this example are added to the database.
POINT N AME

560

TYPE

FREQUENCY

HOUR

LD

1.0

PMIN

LD

1.0

SECND

LD

1.0

EW1R

LA

1.0

EW1TOT

LA

1.0

DX1PASS

LD

1.0

REF_1100

6.5 QPACMD
EW1 may have non-zero values for parameters such as TOPBAR, BOTBAR, and LIMITS, as
desired, just as any other analog input point.
In this example, if one pulse from a megawatt meter equals 10 kilowatt hours, in order to make
EW1 equivalent to megawatt hours, a conversion coefficient must be used on the point.
This means that if there were three pulses per minute in an one hour period, the coefficient would
calculate a value as follows:

PULSES

MIN

10

KWH
PULSE

MWH
1000 KWH

* 60

MIN

HR

1.8

MWH
HR

Alternate Example
An alternate method of converting pulse counts into megawatts per hour is to leave the CI and CV
record fields blank so that the value of EW1 represents the actual pulse count from the QPA card.
A gain could be used in the RESETSUM algorithm to calculate megawatts per hour.
The following application is used to control the QPA card in this example.
ALGORITHM
TIMECHANGE (110)

QPACMD (111)

QPACMD (112)

REF_1100

ALGORITHM P ARAM ETERS

POINT/V ALUES

HCHG

HOUR

SCHG

SECND

MCHG

PMIN

IN1

EW1

FRZ0

RST0

STR0

FRZ1

RST1

STR1

RUN

DX1PASS

IN1

EW1

FRZ0

RST0

STR0

FRZ1

RST1

STR1

RUN

PMIN

561

6.5 QPACMD

ALGORITHM
QPACMD (113)

RESETSUM (115)

ALGORITHM P ARAM ETERS

POINT/V ALUES

IN1

EW1

FRZ0

RST0

STR0

FRZ1

RST1

STR1

RUN

PMIN

IN1

EW1

FFLG

HOUR

RSET

HOUR

RUN

PMIN

RCNT

0.0

GAIN

1.0

OUT

EW1R

FOUT

EW1T0T

The execution of the example application is as follows:


1. Algorithm 110 (TIMECHANGE) generates PMIN and HOUR, which are flags denoting a
change in minutes and hours, respectively. These flags are used by the QPACMD and
RESETSUM algorithms. HOUR, PMIN, and SECND must be initialized as digital points.
2. Algorithm 111 (QPACMD) sends the control command START to Counter 1 (STR1 = 1) of the
QPA card when the digital input DX1PASS point is set. DX1PASS is a point from some
control scheme, which is set to 1 only during the first pass through the application. Therefore,
the QPA starts collecting pulse counts upon start-up, after a hardware reset, or Controller
failover.
3. The algorithm pair of 112 and 113 reads the data from QPA Counter 1 (IN1 = EW1). There
are two counters working within the QPA card. One is an actual counter linked directly with
the pulse input, which is always accumulating data unless reset. The other counter is Counter
1, which reads data from the actual counter upon command.
4. Algorithm 112 unfreezes (FRZ = 2) Counter 1 so that the values in Counter 1 reflect the data
in the actual counter. Algorithm 113 then freezes (FRZ = 1) the value stored in Counter 1 and
resets the actual counter to zero before accumulating more pulse data. Only the reset
operation (RST1 = 1) affects the actual QPA count. The freeze/unfreeze operation only
causes the current value to be placed on the DIOB or removed from the DIOB.

562

REF_1100

6.5 QPACMD
These four algorithms (110, 111, 112, and 113) only run when the digital flag PMIN is true. PMIN
may be generated any number of ways, but in this application, PMIN is set as an output flag from
the TIMECHANGE algorithm every minute. By holding the QPA Counter 1 value frozen for one
minute, a valid QPA reading is present on the DIOB during the entire one-minute period, allowing
other algorithms to access the data.
RESETSUM (115) totals the values read from the QPA over a period of time. The values are
summed, based on the state of the flags PMIN and HOUR. In this example, EW1R contains the
number of megawatts accumulated every minute for an hour. Output EW1TOT is an hourly total
of megawatts generated and is triggered by HOUR. The value of EW1R is stored into EW1TOT
on the hour and EW1R is reset to zero, ready to accumulate the next hours information.
The commands START, STOP, FREEZE, and UNFREEZE may be hard-wired in the field if the
availability of the QPA count is to be controlled by hardware rather than software.

REF_1100

563

6.6 QPACMPAR

6.6

QPACMPAR
Description
QPACMPAR writes a comparator value (VALU) to a comparator register on a QPA Card at the
hardware address found in the counter input (IN1). If IN1 has a linear conversion (to normalize its
current value), the input VALUE is denormalized before it is written to the QPA Card as the
comparator value. If the conversion on IN1 is not linear, the value of VALU is assumed to have
been already denormalized. The denormalized value of VALU is high and low limited between
zero and 32767 so that it can be properly written to the QPA Card. The digital input signal (RUN)
must be TRUE for the algorithm to execute.
Invalid Numbers and Quality
The new value (VALU) to be written to the QPA card is checked for invalid real numbers. If the
new value is invalid, it is not written to the QPA card, and a Hardware Error is reported in the
second status work (2W record field) of the analog input CNTR.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

564

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (analog)

LA

VALU

Variable

Required

Input (analog)

LA

RUN

Variable

Required

Input (digital)

LD

REF_1100

6.6 QPACMPAR

Application Example
This example describes one method of using the QPACMPAR, QPASTAT, and QPACMD
algorithms together to access the data stored on the QPA card.
1. Use QPACMPAR to write a comparator value to the QPA card. This value is stored in a QPA
hardware register (VALU). When the value stored in IN1 equals the value stored in VALU, the
QPA card automatically sets the CMPF flag (a bit in the status register).
2. Use QPASTAT to read the status flags: CMPF, RUNF, and FRZ1. If CMPF is set, use
QPACMD to reset the QPA CNTR.
CAUTION: If both counters on the QPA card are being used, reading the status of one
Counter with QPASTAT clears the other Counters CMPF flag if that flag was set.

REF_1100

565

6.7 QPASTAT

6.7

QPASTAT
Description
QPASTAT reads the status byte from a QPA card at the hardware address found in the counter
input (IN1). The hardware address is checked to determine which counter on the card is used.
The corresponding status flags are checked and output as digital records.
Functional Symbol

Algorithm Record Type = None


Algorithm Definitions
N AM E

566

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input (analog)

LA

CMPF

Variable

Optional

Output (digital);
Comparator flag

LD

RUNF

Variable

Optional

Output (digital);
Running flag

LD

FRZF

Variable

Optional

Output (digital);
Frozen flag

LP

REF_1100

6.8 QSDDEMAND

6.8

QSDDEMAND
Description
The QSDDEMAND algorithm controls the servo driver card (QSD) demand signal and controls
the operation mode (Auto, Manual) of the QSD card. It also services the watchdog timer by
setting the keep alive bit upon each call.
The algorithm places the QSD in automatic if the auto request input (AREQ) is TRUE, the ready
bit read from the QSD card has been TRUE for the specified amount of time (RDY), and the card
in place bit read from the QSD is TRUE.
The algorithm rejects the QSD to local manual if the local manual request input (LREQ) is TRUE,
if the card in place bit from the QSD is FALSE, or if the demand output to the QSD does not equal
the value read back.
The algorithm sets the sensor alarm bits if either the card in place bit is not set or the demand
read back from the QSD card does not equal the demand written to the card.
Note: The OUT point must contain the hardware address for the QSD card.
Functional Symbol

Algorithm Record Type= LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init.

RDY

R1-Real

MIN.
POINT
RECORD

Required

28

Tuning Diagram
Number

Tuning
Constant

Required

Ready Time

IN1

Variable

Required

Analog Calculate
Demand Input

LA

LREQ

Variable

Required

Digital Local Request


Input

LD

AREQ

Variable

Required

Digital Auto Request


Input

LD

REF_1100

567

6.8 QSDDEMAND

N AM E

568

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OUT

Variable

Required

Analog output
variable

LA

ERRB

Variable

Optional

Digital Output

LD

REF_1100

6.9 QSDMODE

6.9

QSDMODE
Description
The QSDMODE algorithm reads the mode in which the QSD card is operating. The output is
TRUE if the QSD card is in Auto Mode. The algorithm also checks the card in place bit and if it is
not set, the sensor alarm bit is set.
Note: The IN1 point must contain the hardware address for the QSD card.
Functional Symbol

Algorithm Record Type= LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Demand Output
(analog)

LA

MODE

Variable

Required

Digital output variable


(digital); QSD mode

LD

REF_1100

569

6.10 QSRMA

6.10 QSRMA
Description
The QSRMA algorithm interfaces the manual/auto station to a QSR card. The QSRMA algorithm
writes a demand and shutdown option to one channel on the QSR card. The algorithm also
outputs status information for the channel such as the card is okay or shutdown is active.
The following modes are available: Auto, Manual, and Local.
Functional Symbol

570

REF_1100

6.10 QSRMA
Auto Mode
The output equals the gained and biased input plus the bias bar value (OUT = (IN1 x IN1G) +
IN1B + BIAS) except:

When the algorithm is told to track, the output equals the track input when the tracking signal
is present. The output ramps from the track input back to the gained and biased input when
the tracking signal is removed.

When a raise inhibit or lower inhibit signal is present, it may prevent the output from following
the input.

The bias bar value is output as an analog value and may be raised or lowered by the
Increase/Decrease set point keys on the Control Panel or Operators Keyboard. This value is only
added to the output value in Auto mode; it has no effect on the output (but still may be raised or
lowered) in Manual or Local mode.
The output value is written to the demand register to a channel on the QSR card.
The Increase/Decrease Output keys on the Operators Keyboard have no effect in this mode.
Manual Mode
The output is raised or lowered by using the Increase/Decrease Output requests. The raise inhibit
and lower inhibit signals override the Operators Keyboard Increase/Decrease Output requests.
The tracking signal causes the output to equal the track input, regardless of the raise/lower inhibit
signals and the Increase/Decrease Output key requests. The bias bar value has no effect on the
output, but still may be raised and lowered.
The output value is written to the demand register to a channel on the QSR card.
Local Mode
If the QSR card has any hardware error, then the algorithm stays in Local Mode.
Mode Transfers
The algorithm transfers between the Auto, Manual, and Local modes as follows:

The digital reject signal rejects the algorithm from Auto to Manual mode or from Auto to Local
mode (when the Manual Inhibit feature is ON).

The Auto Request and Manual Request signals from the AUTO and MAN mode request keys
on the Control Panel or Operators Keyboard switches the algorithm to the desired mode if it
is not in Local mode.

If the QSR has hardware errors, the algorithm rejects to Local mode.

If the Quality Reject (REJQ) feature is OFF, then the quality check is not performed on the
input when in Auto mode. If the algorithm is in Auto mode and the quality of the input goes
BAD or not GOOD depending on the Quality Reject flag, then the algorithm rejects to Manual
mode as long as the Manual inhibit feature is OFF. If the Manual inhibit feature is on, the
algorithm rejects to Local mode.

REF_1100

571

6.10 QSRMA

Regardless of the REJQ parameter, the input value is checked for an invalid value when the
algorithm is in Auto mode. If the algorithm is in Auto mode and the value of the input becomes
invalid, the algorithm rejects to Manual mode, providing the Manual Inhibit feature is OFF. If
the Manual Inhibit feature is ON, the algorithm rejects to Local mode if the QSR is selected. If
the algorithm is not in Auto mode and the operator tries to select Auto mode when the input
value is invalid, the algorithm remains in the same mode and does not reject to Manual mode.

The track input value is also checked for invalid real numbers when the algorithm is being told
to track. While in Auto mode, if the algorithm is told to track and the track input value is
invalid, the algorithm rejects to Manual mode, providing the Manual Inhibit feature is OFF. In
all modes, the track request is ignored when the track input value is invalid.

On reset/power-up, the algorithm is in Local mode if a QSR interface is, then the algorithm
goes to the mode initialized by the Firstpass mode (FP) parameter unless that mode is
blocked by the Manual Inhibit feature.

Note: The Manual Inhibit feature prevents the algorithm from entering Manual mode when it is
on.
The interface keys of the Control Panel and Operators Keyboard are:
KEY

USE

AUTO Function Key

Auto mode request

MANUAL Function Key

Manual mode request

Set Point Increase Function Key

Raise the bias bar (up arrow)

Set Point Decrease Function Key

Lower the bias bar (down arrow)

Output Increase Function Key

Raise the output (up triangle)

Output Decrease Function Key

Lower the output (down triangle)

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog point. This algorithm takes the action shown in the following table in response to the
information found in the analog input signal TRIN:
BIT

572

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through, set TRUE on first pass


to read the hardware, or set TRUE when
not in Auto mode.

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

Implemented*

Passed through*

20

Raise inhibit

Implemented*

Passed through*

21

Not used

No action

Not used

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Local mode

25

Manual mode

No action

Manual mode

REF_1100

6.10 QSRMA

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

26

Auto mode

No action

Auto mode

27

Not used

No action

Not used

28

Not used

No action

Not used

29

Not used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

* Only when the Track signal is not present.

The high and low limit flags, the mode and the tracking signals from the algorithm are output to
TOUT, to be used for display and by an upstream algorithm. The configuration of the use of this
algorithm must be specified by the user for correct implementation of the tracking features. The
following hardware related errors are set in the second status word of the analog output record
and cause the analog output to have BAD quality:
BIT

DESCRIPTION
2

BAD hardware status. The Data Valid and Card OK bits on the QSR card.

If an invalid hardware address or BAD hardware status error caused the algorithm to reject to
Local, the quality remains BAD on the output and the algorithm remains in Local mode until the
error is cleared.
If there are no hardware errors, the quality of OUT is set to the quality of the track input variable
when tracking. Otherwise, the quality of OUT is GOOD when in Manual mode or set to the quality
of the input when in Auto mode.
If the algorithm calculates an invalid real number for the output in Auto mode, the quality of OUT
is set to BAD, the OUT value is invalid, and the drop is placed into alarm.
Note: If the algorithm generates an invalid track output value, the input value is used as the
track output, unless it is invalid. The track output value is not updated if both the calculated track
output and input values are invalid.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init

IN1G

R5-Real

Tuning
Constant

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Required

26

Tuning diagram
number

Required

1.0

Gain on input. The


gain should never be
initialized to zero; if it
is, the drop is placed
into alarm.

573

6.10 QSRMA

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1B

R6-Real

Tuning
Constant

Required

0.0

* TPSC

R7-Real

Selectable

Required

100.0

Maximum value of the


output point

LA

* BTSC

R8-Real

Selectable

Required

0.0

Minimum value of the


output point

LA

TPBS

R2-Real

Tuning
Constant

Required

0.0

Maximum value of the


bias bar

BTBS

R3-Real

Tuning
Constant

Required

0.0

Minimum value of the


bias bar

PCNT

X1-Byte

Tuning
Constant

Required

Percent change in
first four seconds

TIME

X2-Byte

Tuning
Constant

Required

25

Number of seconds
remaining for ramp to
full scale

FP

G0-Integer
Bit 8

Data Init.

Required

MANUAL

First pass mode.


Algorithm goes to this
mode on
reset/power-up:

Bias on input

MANUAL: Manual
mode
AUTO: Auto mode

574

HWAD

B2-Integer

Data Init.

Required

Card address for any


hardware interface
(see page 3).

PCI

X5-Byte

Data Init.

Required

PCI Card Number


(1,2)

CHNL

X6-Byte

Data Init.

Required

QSR Channel

PRAR

S1-Real

Tuning
Constant

Required

2.5

Priority Raise Rate

PRAT

S2-Real

Tuning
Constant

Required

100.0

Priority Raise Target

PLWR

S3-Real

Tuning
Constant

Required

2.5

Priority Lower Rate

PLWT

S4-Real

Tuning
Constant

Required

0.0

Priority Lower Target

REF_1100

6.10 QSRMA

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

REJQ

G0-Integer
Bits 6 and 7

Data Init.

Required

DEFAULT
VALUE
BAD

DESCRIPTION

MIN.
POINT
RECORD

Quality reject type


(only has meaning if
Manual Inhibit is
OFF):

BAD - Algorithm
rejects to Manual
mode when the
quality of the IN1
input goes BAD and
the algorithm is in
Auto mode.
NOTGOOD Algorithm rejects to
Manual mode when
the quality of the IN1
input is NOT GOOD
and the algorithm is in
Auto mode.
OFF - The quality of
the input is not
checked or used to
reject the algorithm to
Manual mode when
the algorithm is in
Auto mode.
TRAT

Tuning
Constant

Required

2.5

Track ramp rate

Variable

Required

Input variable analog


input

LA

TOUT

Variable

Optional

Track output value


mode and Status
digital output signals
for Input variable

LA

MODE

Variable

Optional

Input Mode Point

LP

SHUT

Variable

Optional

Shutdown signal to
Card

LD, LP

OUT

Variable

Required

Analog output
variable

LA

TRIN

Variable

Optional

Tracking and Limiting


signals and tracking
value; analog input
variable

LA

BIAS

Variable

Optional

Analog bias bar


variable output

LA

IN1

REF_1100

R1-Real

575

6.10 QSRMA

N AM E

VALI

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

Variable

Optional

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Data Valid:

LD, LP

1 = Valid
0 = Invalid)
SMOD

Variable

Optional

Shutdown Mode:

LD, LP

1 = Open
0 = Closed
SACT

Variable

Optional

Shutdown Active

LD, LP

CARD

Variable

Optional

Card Okay:

LD, LP

1 = Okay
0 = Not Okay
* When a parameter type is defined as "Selectable" and marked as "Required," the Control Builder may
default the parameter to a value and mark it as "Optional." However, for the control function to be executed
properly, you must enter a value for the parameter.

576

REF_1100

6.11 QVP

6.11 QVP
Description
The QVP algorithm provides an interface to the Controller for communicating to the QVP card.
The algorithm provides set point position information as well as providing a calibration interface to
the QVP card. (See QVP Servo Controller User Guide.)
Normal Mode
The QVP algorithm provides an interface between the Ovation system and a QVP card. It allows
you to input two digital command words to the QVP and receive two digital status words in return.
Also, you may input and output analog utility points (one in, one out) for use in conjunction with
the command/status words. Optionally, you may output the internal working set point of the QVP.
Primarily, the algorithms function is to provide communication between a QVP card and the
Ovation system. However, it also stores certain card information and may be called upon to
configure a card as detailed below.
When you initiate a request to change some of the QVP working values (gain, reset, and so forth),
this algorithm intercepts the value and wait for the QVPs response to the user. If the operation
was successful, the algorithm stores that information in the algorithm record. At next QVP startup,
if you have set a QVP jumper (JS6) for configure from controller, the algorithm sends all
configuration information currently stored.
At the end of a QVP calibration sequence, if the card was calibrated properly, the card sets a bit
in the second status word indicating that the calibration is done. If the algorithm sees this bit set, it
queries the card for all calibration data and store this information in the algorithm record. Again, at
card startup, the algorithm attempts to send this information to the QVP if the jumper has been set
to warrant this operation.
The algorithm also signals an error if it or the user has attempted to send a command to the card
and no response has been given.
Special Test Mode
The special test mode has the system set point input from the SPIN analog point and the valve
position output to the VPOT analog point. This way, all functions may be tested without the need
for adding any other algorithms. In order to execute the special test mode, valid point names must
be entered for the optional SPIN and VPOT entry fields in the algorithm template, the algorithm
must be made tunable, and the U1 tuning constant must be set to 356.0 through a tuning
diagram.

REF_1100

577

6.11 QVP

Registers
Each QVP card uses eight registers and each QVP algorithm interfaces to one QVP card. With
each scan of the Controller, the algorithm writes the appropriate value to a register and waits for a
response. If there is no response, it sets an error bit in the status word for that card. The QVP
responds by putting a response value into the same register, which is read and processed by the
algorithm. QVP registers are defined below:
REGISTER

WRITTEN

QVP Hardware Address

Set Point in (real, 1st word)

Position out (real, 1st word)

QVP Hardware Address + 1

Set Point in (real, 2nd word)

Position out (real, 2nd word)

QVP Hardware Address + 2

Dummy input word 1

Digital status word 1

QVP Hardware Address + 3

Dummy input word 2

Digital status word 2

QVP Hardware Address + 4

Digital input word 1

Set point out (real, 1st word)

QVP Hardware Address + 5

Digital input word 2

Set point out (real, 2nd word)

QVP Hardware Address + 6

Analog utility input point (real,


1st word)

Analog utility output point

Analog utility input point (real,


2nd word)

Analog utility output point

QVP Hardware Address + 7

TO

QVP

RETURNED

FROM

QVP

(real, 1st word)

(real, 2nd word)

Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DIAG

LU-Integer

Data Init

PCI

X5-Byte

HWAD

B2-Integer

DIN1

578

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Required

114

Tuning Diagram
Number

Data Init

Required

PCI Card Number


(1,2)

Data Init

Required

Card Hardware
address (see page 3)

Variable

Required

Digital Input 1

LP

REF_1100

6.11 QVP

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIN2

Variable

Required

Digital Input 2

LP

DIN3

Variable

Required

Digital Input 3

LP

ANIN

Variable

Required

Analog Input Value

LA

SPNT

Variable

Optional

Analog demand to
QVP

LA

DST1

Variable

Required

Digital Output 1

LP

DST2

Variable

Required

Digital Output 2

LP

AOUT

Variable

Required

Analog Output

LA

SPIN

Variable

Required

Analog Output

LA

VPOT

Variable

Required

Analog Output

LA

REF_1100

579

6.12 XFLOW

6.12 XFLOW
Description
The XFLOW algorithm calculates a pressure-and-temperature-compensated mass or volumetric
flow for ideal gases.
The mass flow is calculated as shown below:

The volumetric flow is calculated as shown below:

where:
P1

PACT + ABSPRES

P2

PREF + ABSPRES

T1

TACT + ABSTEMP

T2

TREF + ABSTEMP

The algorithm can be operated with or without a Q-Line Loop Interface (QLI) card. If interfacing to
a QLI card, the inputs should be read from the QLI card by using the AIN algorithm and specifying
a QLI card type.
When operating with a QLI interface, the QLI card should be configured for mass flow operation.
This is specified through the card-type jumpers on the QLI card. A QLI hardware address of zero
indicates no QLI card interface.
No pressure compensation or temperature compensation is available. For no pressure
compensation, the user must specify a negative pressure reference (PRES REF) value. For no
temperature compensation, the user must specify a negative temperature reference (TEMP REF)
value.
The SCALE TOP and SCALE BOT parameters are used to limit the output value of the algorithm.

580

REF_1100

6.12 XFLOW
If the QLI hardware address is not zero, the QLI configuration data for the flow section is written
onto the QLI card. If the switch on the QLI card is not in Ignore EEPROM position, the
configuration data is saved in EEPROM on the QLI card. The top of bar, bottom of bar and the
first four characters of the engineering units parameters for the output are used for the
configuration data.
The user must initialize these parameters to be displayed at the Loop Interface Module (LIM).
If the QLI hardware address is not zero, then Bit 10 is set in the second status word of the output
record for one loop whenever the QLI card is reconfigured. This does not affect the quality of the
output record (that is, the output quality is not set BAD when the QLI card is reconfigured).
Functional Symbol

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog track point. This algorithm takes the following action in response to the information
found in the digital input signal TRIN:
BIT

REF_1100

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Ignored

Not used

17

Track if lower

Ignored

Not used

18

Track if higher

Ignored

Not used

19

Lower inhibit

Ignored

Not used

20

Raise inhibit

Ignored

Not used

21

Not used

No action

Not used

22

Not used

No action

Not used

23

Deviation alarm

No action

Not used

24

Local manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Supervisory mode

No action

Not used

28

Cascade mode

No action

Not used

29

DDC mode

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

581

6.12 XFLOW
The high and low limit flags are output TOUT to be used for display.
If the QLI hardware address is not zero, the following hardware related errors are set in the
second status word of the analog output record and cause the analog output to have BAD quality:
BIT

DESCRIPTION
0

Invalid hardware address. The user specified a hardware address outside the legal
range of 0 to 3FCH.

Write verification error. The algorithm tried to reconfigure the flow section of the QLI card,
was unable to do so.

QLI configuration error. The algorithm tried to reconfigure the QLI card for two
consecutive loops. This could be caused by another algorithm having the same QLI
address, where both algorithms are trying to reconfigure the same section on the QLI
card.

The output will have bad quality if any QLI hardware-related errors are detected. If this is not the
case, the worst quality of the analog inputs specified is assigned to the quality of the output.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU - Integer

Data Init.

59

Tuning diagram number

--

FLOW

G3 - Integer
Bit 5

Data Init.

MASSFLOW

Type of flow calculation


performed:

--

MASSFLOW = mass flow


VOLFLOW = volume flow
GAIN

R3 - Real

Tuning
Constant

1.0

Calculated flow coefficient at


base operating conditions.

--

PRES

R4 - Real

Tuning
Constant

2400.0

Reference pressure; base


operating pressure used in the
calculation of the flow
coefficient, GAIN

--

TEMP

R5 - Real

Tuning
Constant

1000.0

Reference temperature; base


operating temperature used in
the calculation of the flow
coefficient, GAIN.

--

PABS

G3 - Integer
Bit 2

Data Init.

YES

Convert pressure values to


absolute press option.

--

YES = input and reference


pressure values are converted
to absolute pressure.
NO = input and reference
pressure values are not
converted to absolute
pressure.

582

REF_1100

6.12 XFLOW

N AM E

LC ALG.
RECORD
FIELD

TYPE

DEFAULT
VALUE

DESCRIPTION

PUNT

G3 - Integer
Bits 0
and 1

Data Init.

PSI

Pressure conversion type. See


below for Type and Absolute
Pressure Conversion Value:

MIN.
POINT
RECORD
--

PSI -- 14.696
INH20 -- 406.800
KGCM2 -- 1.033
KPA -- 101.325
TABS

G3 - Integer
Bit 4

Data Init.

YES

Convert temperature values to


absolute temperature option.

--

YES = input and reference


temperature values are
converted to absolute
temperature.
TUNT

G3 - Integer
Bit 3

Data Init.

FAHRA

Temperature conversion type.


See below for Type and
Absolute Temperature
Conversion Value:

--

FAHR -- 459.67
CENT -- 273.15
TPSC

R1 - Real

Tuning
Constant

100.0

Maximum value of the output

--

BTSC

R2 - Real

Tuning
Constant

0.0

Maximum value of the output

--

HWAD

B2 - Integer

Data Init.

Hardware address of QLI card.

--

PCI

X4 - Byte

Data Init.

PCI card number

--

PNES

G3 - Integer
Bit 6

Data Init.

NOCHECK

Check for use of negative


pressure and temperature
reference values.

--

NOCHECK = No check is
performed to see fo the
PACT(C) and TACT(C) inputs
were specified. A negative
PRES REF or TEMP REF
value causes the associated
term to be omitted from the
equation.
CHECK = Check whether the
PACT(C) and TACT(C) inputs
were specified. If an input is
not specified, the associated
term is omitted from the
equation. When the inputs are
specified, the PRES REF and
TEMP REF value are used
regardless of their sign.

REF_1100

583

6.12 XFLOW

N AM E

LC ALG.
RECORD
FIELD

TYPE

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

--

Variable

--

Differential pressure analog


input

LA

PACT

--

Variable

--

Actual pressure analog input


(optional)

LA

TACT

--

Variable

--

Actual temperature analog


input (optional)

LA

OUT

--

Variable

--

Analog output variable

LA

TOUT

--

Variable

--

Mode status and track output


value

LA

PSEL

G3 - Integer
Bit 7

Data Init.

STANDARD

--

Select pressure conversion


type:
STANDARD = use the
pressure conversion value
defined by PRES UNIT.
USER = use the pressure
conversion value defined by
USER PRES.

PUSR
TRIN

584

R6

Data Init.
--

Variable

0.0000
--

Value for user-specified


pressure conversion
Tracking input

-LA

REF_1100

6.12 XFLOW
Function
IF ((OPT INIT = NOCHECK) AND (PRES REF < 0)) OR
((OPT INIT = CHECK) AND (PACT = UNDEFINED))
THEN
P1 = P2 = 1
ELSE
P1 = PACT + ABSPRES
P2 = PRES REF + ABSPRES
IF ((OPT INIT = NOCHECK) AND (PRES REF < 0)) OR
((OPT INIT = CHECK) AND (PACT = UNDEFINED))
THEN
T1 = T2 = 1
ELSE
T1 = TACT + ABSTEMP
T2 = TEMP REF + ABSTEMP
IF MASSFLOW THEN
IF (P2 = 0) OR (T1 = 0) THEN
OUTVAL = 0
ELSE
OUTVAL = PDIF * (P1/P2) * (T2/T1)
ELSE
IF (P1 = 0) OR (T2 = 0) THEN
OUTVAL = 0
ELSE
OUTVAL = PDIF * (P2/P1) * (T1/T2)
IF OUTVAL < 0 THEN
OUTPUT = 0

REF_1100

585

6.12 XFLOW

ELSE
OUTPUT = GAIN * SQUARE ROOT OF OUTVAL
where:

586

P1, P2, T1, T2, OUTVAL

local, temporary, real variables

ABSPRES, ABSTEMP

constraints from the pressure and temperature conversion


tables built into the algorithm

REF_1100

6.13 XMA2

6.13 XMA2
Description
The XMA2 algorithm interfaces a CRT-based soft manual/auto station and an optional QAM,
QAA, QVP, QLI, or QLJ card with the functional processor.
The following modes are available: Auto, Manual, and Local.
You select one of the following interfaces with TYPE:

SOFT - Soft manual/auto station only

QAM - QAM card demand interface with soft manual/auto station

QAA - QAA card demand interface with soft manual/auto station

QLI - QLI or QLJ card interface

QVP - QVP card interface

Functional Symbol

If QLI is set in TYPE and the Controller is reset, powered-up or fails, the output is read from the
QLI or QLJ card and used initially in the OUT field of the algorithm. This reports the status of the
field device before any action is taken by either the algorithm or the operator.
Note: The TPSC and BTSC parameters are used to limit the output value of the algorithm.
These values must always be 100% and 0%, respectively when a SLIM interfaces to a QLI or
QLJ card.

REF_1100

587

6.13 XMA2
Auto Mode
The output equals the gained and biased input plus the bias bar value (OUT= (IN1 x IN1G) +
IN1G + IN1B) except:

When the algorithm is told to track, the output equals the track input when the tracking signal
is present. The output ramps from the track input back to the gained and biased input when
the tracking signal is removed.

When a raise inhibit or lower inhibit signal is present, it may prevent the output from following
the input.

The bias bar value is output as an analog value and may be raised or lowered by the
Increase/Decrease set point keys on the Operators Keyboard. This value is only added to the
output value in Auto mode; it has no effect on the output (but still may be raised or lowered) in
Manual or Local mode.
If a QAM or QAA interface is selected, the output value is written to the demand counter on the
QAM or QAA card. A digital signal may be written to a QBO card as an optional indication of the
Auto mode by using the ALITE point. This point has the hardware address for the QBO card.
The Increase/Decrease Output keys on the Operators Keyboard have no effect in this mode.
Manual Mode
The output is raised or lowered by using the Increase/Decrease Output requests. The raise inhibit
and lower inhibit signals override the Operators Keyboard Increase/Decrease Output requests.
The tracking signal causes the output to equal the track input, regardless of the raise/lower inhibit
signals and the Increase/Decrease Output key requests. The bias bar value has no effect on the
output, but still may be raised and lowered.
If a QAM or QAA interface is selected, the output value is written to the demand counter on the
QAM or QAA card. A digital signal may be written to a QBO card output as an optional indication
of the Manual mode by using the MLITE point.
The output value may also be raised or lowered from the small Loop Interface Module (SLIM) in
this mode.
Local Mode
This mode is only available if a QAM, QAA, QVP, QLI, or QLJ type interface has been selected.
The Increase/Decrease commands from the Operator Interface Module (OIM) directly control the
QAM or QAA card, which is in Manual. The Increase/Decrease commands from the SLIM directly
control the QLI card, which is in Local mode. The algorithm either reads the demand counter on
the QAM or QLI, or the position feedback value on the QAA and causes its output to track the
cards value. In this tracking mode, all directional commands inside the functional processor (for
example, Variable Input, Raise Inhibit and Lower Inhibit) and directional commands from the
Operators station (for example, Increase, Decrease) have no effect on the algorithm.
The QAM card can be optionally put in Auto (Computer) mode when the algorithm receives either
a Manual or Auto mode request from the Operators Keyboard. This Auto request is output as a
signal to a QBO card by using the REQ Point.

588

REF_1100

6.13 XMA2

Mode Transfers
The algorithm transfers between the Auto, Manual, and Local modes as follows:

The digital reject signal rejects the algorithm from Auto to Manual mode or from Auto to Local
mode when the Manual Inhibit feature is ON.

The Auto Request and Manual Request signals from the AUTO and MAN mode request keys
on the Operators Keyboard switch the algorithm to the desired mode if it is not in Local mode
(or if the REQ point has been initialized for a QAM card).

If the QAM or QAA interface is selected, the OIM can reject the algorithm to Local mode. The
COMP (computer) pushbutton at the OIM causes the algorithm to enter a previously selected
mode.

If the QAM or QAA interface is selected and there are hardware errors, the algorithm rejects
to Local mode if the NO FAIL feature if OFF. If the QAM interface is selected and the NO
FAIL feature is on, then the algorithm remains in the previous mode and continues to function
normally. The quality of OUTPUT is set to BAD when there are any QAM or QAA hardware
errors.

If the QLI or QLJ interface is selected, the SLIM can switch the algorithm between Auto,
Manual, and Local modes.

If the QLI or QLJ interface is selected, and if there are hardware errors, the algorithm rejects
to Local mode. If the card determines that there is a SLIM communications error while it is in
Local mode, it rejects the card to Manual mode. The algorithm also goes to Manual mode.

If the Quality Reject (REJQ) feature is OFF, then the quality check is not performed on the
input when in Auto mode. If the algorithm is in Auto mode and the quality of the cascade input
goes BAD or not GOOD depending on the Quality Reject flag, then the algorithm rejects to
Manual mode as long as the Manual inhibit feature is OFF. If the Manual inhibit feature is on,
the algorithm rejects to Local mode.

Regardless of the REJQ parameter, the input value is checked for an invalid value when the
algorithm is in Auto mode. If the algorithm is in Auto mode and the value of the input becomes
invalid, the algorithm rejects to Manual mode, providing the Manual Inhibit feature is OFF. If
the Manual Inhibit feature is ON, the algorithm rejects to Local mode if the QAM, QAA, QLI or
QLJ interface is selected. If the algorithm is not in Auto mode and the operator tries to select
Auto mode when the input value is invalid, the algorithm remains in the same mode and does
not reject to Manual mode.

The track input value is also checked for invalid real numbers when the algorithm is being told
to track. While in Auto mode, if the algorithm is told to track and the track input value is
invalid, the algorithm rejects to Manual mode, providing the Manual Inhibit feature is OFF. In
all modes, the track request is ignored when the track input value is invalid.

On reset/power-up, the algorithm is in Local mode if a QAM, QAA, QLI or QLJ interface is
selected. If a soft interface is selected, then the algorithm goes to the mode initialized by the
Firstpass mode (FP) parameter unless that mode is blocked by the Manual Inhibit feature.

Note: The Manual Inhibit feature prevents the algorithm from entering Manual mode when it is
on.

REF_1100

589

6.13 XMA2

The interface keys of the Operators Keyboard are:


KEY

USE

AUTO Function Key

Auto mode request

MANUAL Function Key

Manual mode request

Set Point Increase Function Key

Raise the bias bar (up arrow)

Set Point Decrease Function Key

Lower the bias bar (down arrow)

Output Increase Function Key

Raise the output (up triangle)

Output Decrease Function Key

Lower the output (down triangle)

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog track point. This algorithm takes the action shown in the following table in response
to the information found in the input signal TRIN:
BIT

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through, set TRUE on first pass to


read the hardware, or set TRUE when not
in Auto mode.

17

Track if lower

No action

Passed through*

18

Track if higher

No action

Passed through*

19

Lower inhibit

Implemented*

Passed through*

20

Raise inhibit

Implemented*

Passed through*

21

Not used

No action

Not used

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Local mode

25

Manual mode

No action

Manual mode

26

Auto mode

No action

Auto mode

27

Not used

No action

Not used

28

Not used

No action

Not used

29

Not used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

* Only when the Track signal is not present.

590

REF_1100

6.13 XMA2
The high and low limit flags, the mode and the tracking signals from the algorithm are output,
TOUT, to be used for display and by an upstream algorithm. The configuration of the use of this
algorithm must be specified by the user for correct implementation of the tracking features. If the
upstream algorithm is BALANCER, then the configuration must indicate that this algorithm is
being used with the BALANCER algorithm. Otherwise, the configuration is specified as NORMAL.
If the QAM, QAA, QLI, or QLJ interface is selected, the following hardware related errors are set
in the second status word of the analog output record and cause the analog output to have BAD
quality:
BIT

DESCRIPTION
2

BAD hardware status. The Power and Card OK bits on the QLI or QLJ card were
not set.

If an invalid or BAD hardware status error caused the algorithm to reject to Local, the quality
remains BAD on the output and the algorithm remains in Local mode until the error is cleared.
The error bit in the second status word remains set in Local mode, even though the quality is
GOOD, which enables you to determine the cause of the reject.
If there are no hardware errors, the quality of OUT is set to the quality of the track input variable
when tracking. Otherwise, the quality of OUT is GOOD when in Manual mode or set to the quality
of the cascade input when in Auto mode.
If the algorithm calculates an invalid real number for the output in Auto mode, the quality of OUT
is set to BAD, the OUT value is invalid, and the drop is placed into alarm.
Note: If the algorithm generates an invalid track output value, the input value is used as the
track output, unless it is invalid. The track output value is not updated if both the calculated track
output and input values are invalid.
The TPSC and BTSC parameters are used to limit the output value of the algorithm. These values
must always be 100% and 0%, respectively, when interfacing to a QLI card which is connected to
an SLIM.
When the LI is configured as an electric drive card type, a difference between the actual position
and the demand value < FINE causes no raise or lower action to be taken. A difference in CRSE
causes fast raise or lower action to be taken. The slow rates specified by the ONOFF parameter
determines the raise or lower action taken when the difference is between FINE and CRSE.
Any output raise or lower request, from Operator station, are sent directly to the QLI configured as
an electric drive card type when it is in Failed Local mode. The QLI outputs any LIM raise or lower
requests for the output, then outputs any Controller raise or lower requests for the output to the
digital raise or lower outputs.
When the position feedback signal of a QLI configured as an electric drive card type fails, the QLI
goes to Failed Local mode and the value of output point is the feedback signal from the drive. The
output bar LIM display flashes between 0 and 100% to indicate the Failed Local mode.
The Reverse (Inverse) voltage configuration parameter on the QLI or QLJ card causes the output
voltage to be zero for an output value of 100%. The default for this configuration parameter is
Normal Voltage (that is, the output voltage is full voltage for an output of 100% and is zero volts
for an output of 0%).

REF_1100

591

6.13 XMA2
The options to have runbacks and/or interface to an electric drive on the QLI card must be
configured through the card-type jumpers on the QLI card.
CAUTION: When using the XMA2 algorithm with a BALANCER algorithm, follow these
guidelines.
If XMA2 precedes BALANCER, set the XMA2 CNFG parameter to NORMAL.
For all XMA2s that immediately follow BALANCER, set XMA2s CNFG parameter to
BALANCER.
For XMA2s that follow XMA2s in guideline 2, set CNFG parameter to NORMAL.
Algorithm Record Type = LC
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

DIAG

LU-Integer

Data Init

Required

110

Tuning diagram number

IN1G

R5-Real

Tuning
Constant

Required

1.0

Gain on input. The


cascade gain should
never be initialized to
zero; if it is, the drop is
placed into alarm.

IN1B

R6-Real

Tuning
Constant

Required

0.0

Bias on input

TPSC

R7-Real

Tuning
Constant

Required

100.0

Maximum value of the


output point

BTSC

R8-Real

Tuning
Constant

Required

0.0

Minimum value of the


output point

TPBS

R2-Real

Tuning
Constant

Required

0.0

Maximum value of the


bias bar

BTBS

R3-Real

Tuning
Constant

Required

0.0

Minimum value of the


bias bar

PCNT

X1-Byte

Tuning
Constant

Required

Percent change in first


four seconds

TIME

X2-Byte

Tuning
Constant

Required

25

Number of seconds
remaining for ramp to
full scale

G0-Integer
Bits 0 and 1

Data Init.

Required

SOFT

Algorithm type:

TYPE

MIN.
POINT
RECORD

SOFT Soft M/A only


QAM QAM interface
QAA QAA interface
QLI QLI or QLJ
interface

592

REF_1100

6.13 XMA2

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

HWAD

B2-Integer

Data Init.

Required

Card address for any


hardware interface (see
page 3).

CARD

X5-Byte

Data Init

Required

PCI Card Number (1, 2)

FP

G0 - Integer
Bit 8

Data Init.

Required

MANUAL

First pass mode.


Algorithm goes to this
mode on
reset/power-up:

MANUAL: Manual mode


AUTO: Auto mode
QVPO

G0-Integer
Bit 9

Data Init.

Required

NO

Select QVP interface


(NO, YES)

OIM

G0-Integer
Bit 2

Data Init.

Required

AUTO

OIM computer push


button action

(for QAM and QAA


interface only)
AUTO Algorithm
goes from Local to Auto
mode when pushed.
MAN Algorithm goes
from Local to Manual
mode when pushed.
FAIL

G0-Integer
Bit 3

Data Init.

Required

OFF

No card failure option


(for QAM interface only)

OFF Algorithm goes


to local mode upon
power failure or loss of
the Keep Alive
watchdog timer.
ON Algorithm
remains in the previous
mode upon loss of the
card.
CHK

REF_1100

G1-Integer
Bit 0

Data Init.

Required

NO

Check healthy bit for


QAA card.

593

6.13 XMA2

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

REJQ

G0-Integer
Bits 6 and 7

Data Init.

Required

BAD

Quality reject type (only


has meaning if Manual
Inhibit is OFF):

MIN.
POINT
RECORD

BAD Algorithm
rejects to Manual mode
when the quality of the
CAS input goes BAD
and the algorithm is in
Auto mode.
NOTGOOD
Algorithm rejects to
Manual mode when the
quality of the CAS input
is NOT GOOD and the
algorithm is in Auto
mode.
OFF The quality of
the cascade input is not
checked or used to
reject the algorithm to
Manual mode when the
algorithm is in Auto
mode.
INHB

G0-Integer
Bit 4

Data Init.

Required

OFF

Manual inhibit:

OFF Manual mode is


allowed.
ON Manual mode is
not allowed. The OIM
pushbutton is set to
AUTO.

CNFG

G0-Integer
Bit 5

Data Init.

Required

NORMAL

Configuration type:

NORMAL Upstream
algorithm is not
BALANCER.
BALANCER
Upstream algorithm is
BALANCER.

TRAT

R1-Real

Tuning
Constant

Required

2.5

Track ramp rate

INVR

X3-Byte

Data Init

Required

NO

Inverse voltage for the


QLI card:

NO Normal voltage
YES Inverse voltage

594

REF_1100

6.13 XMA2

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

ONOFF

G3-Integer

Data Init

Required

771

Slow raise/lower pulse


on/off times for electric
drive signals (low byte =
Off time; high byte = On
time) in units of 0.1 or
0.004 seconds. This
field is used only for the
QLI card.

MIN.
POINT
RECORD

(Note: 771=0303H)
Two ranges of values
(0.1 or 0.004 second
resolution) are available
for the electric drive
slow action pulse on/off
values (ONOFF TIME
field):
For 0.1 second
resolution, byte values
in the range 0 to 127 (00
to 7FH) are used. For
example, 03H
represents a 0.3 second
pulse time (3 * 0.1).
For 0.004 second
resolution, byte values
in the range 128 to 255
(80 to FFH) are used to
represent the range 0 to
127. For example, 83H
represents a 0.012
second plus time (3 *
0.004).
The second range of
values (0.004 second
resolution) is available
only with Group 3 QLI
cards (3QLI31).

REF_1100

595

6.13 XMA2

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

FAST

G4-Integer

Data Init

Required

65280

Fast raise/lower pulse


on/off times for electric
drive signals (low byte =
Off time; high byte = On
time) in units of 0.1 or
0.004 seconds. This
field is used only for the
QLI card.

MIN.
POINT
RECORD

(Note: 771=0303H)
Two ranges of values
(0.1 or 0.004 second
resolution) are available
for the electric drive
slow action pulse on/off
values (ONOFF TIME
field):
For 0.1 second
resolution, byte values
in the range 0 to 127 (00
to 7FH) are used. For
example, 03H
represents a 0.3 second
pulse time (3 * 0.1).
For 0.004 second
resolution, byte values
in the range 128 to 255
(80 to FFH) are used to
represent the range 0 to
127. For example, 83H
represents a 0.012
second plus time (3 *
0.004).
The second range of
values (0.004 second
resolution) is available
only with Group 3 QLI
cards (3QLI31).

596

PRAT

X6-Byte

Data Init

Required

Priority runback rate in


percent per second for
an electric drive QLI
card type.

FINE

S9-Real

Data Init

Required

Difference (in percent)


between the actual
position and the
demand value below
which no raise or lower
action is taken.
Applicable only for a QLI
card configured for an
electric drive.

REF_1100

6.13 XMA2

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

CRSE

T1-Real

Data Init

Required

Difference (in percent)


between the actual
position and the
demand value above
which fast raise or lower
action is taken.
Applicable only for a QLI
card configured for an
electric drive.

MIN.
POINT
RECORD

IN1

Variable

Required

Variable analog input

LA

TOUT

Variable

Required

Mode and Status output


signals

LA

REJ

Variable

Optional

Manual Reject digital


input signal; you may
enter the name of a
point.

LD, LP

OUT

Variable

Required

Analog output variable

LA

TRIN

Variable

Optional

Tracking analog input


variable

LA

BIAS

Variable

Optional

Analog bias bar variable


output

LA

REQ

Variable

Optional

Auto Request output

LD

ALITE

Variable

Optional

Auto Light output

LD

MLITE

Variable

Optional

Manual Light output

LD

REF_1100

597

6.14 XML2

6.14 XML2
Description
The XML2 algorithm performs a manual loader function. The algorithm provides an interface to
the Operators soft station. Interfaces to the hard Operator Interface Module (OIM) station and set
point portion of the QAM, QLI or QLJ card may each be initialized. If the QAM, QLI or QLJ
hardware address is initialized, the algorithm reads the set point stored on the QAM, QLI or QLJ
set point counter to use as its output value. This counter may be incremented/decremented at any
time by external Increase/Decrease contacts from an OIM station which is wired directly to the
QAM, QLI or QLJ card. If the QAM, QLI or QLJ hardware address is not initialized, the algorithm
uses the last output value as its output value.
Functional Symbol

The output of this algorithm may be increased and/or decreased by the hard OIM station or the
Operators soft station. If the hardware addresses of the Increase and Decrease contacts from the
hard OIM station are initialized, then the algorithm monitors the contacts that it reads from the
QCI or QBI inputs (which are connected to the hard OIM station) for increase and/or decrease
requests for the set point.
This initialization is typically used when a QAA card is used in place of the QAM card and an OIM
set point adjustment feature is desired. It continually checks the Set Point Increase/Decrease
function keys from the Operators station for increase/decrease requests for the set point output. If
requests are received from both the hard and soft stations at the same time, the hard OIM station
contacts override the Operators Keyboard keys. On power-up or reset of the functional
processor, the output is the initial value of the algorithms output (default value = 0.0) if the QAM,
QLI or QLJ interface is not initialized. Otherwise, the output is the current value stored on the
QAM, QLI or QLJ set point counter.
If the QLI card is selected in the CARD algorithm field and the Controller is reset, powered-up or
fails, the set point is read from the QLI or QLJ card and used initially in the OUT field of the
algorithm. This reports the status of the field device before any action is taken by either the
algorithm or the operator. The interface keys of the Operators Keyboard are:

598

KEY

USE

Set Point Increase Function Key

Raise the output

Set Point Decrease Function Key

Lower the output

REF_1100

6.14 XML2

Note: If the top and bottom scales are equal, the high limit flag is set and the output value is
equal to the top scale.
If the algorithm is told to track and the track input is invalid, the track request is ignored and the
drop is placed into alarm.
If the QAM, QLI or QLJ hardware address is initialized, this value is written to the set point
counter on the specified card.
If the algorithm is operating with a QLI or QLJ interface and the QLI or QLJ card is in Local mode,
the output of the algorithm cannot be changed from the Operators station. In this case, the output
of the algorithm can be changed from the SLIM station only.
If a QLI or QLJ interface is selected and the QLI or QLJ hardware address is not zero, the default
configuration data for the set point section is written to the QLI or QLJ card. If the switch on the
QLI or QLJ card is not in the Ignore EEPROM position, the data is saved in EEPROM on the
QLI or QLJ card. The set point top of scale, bottom of scale and units parameters for the
configuration data are taken from the top of bar, bottom of bar, and the first four characters of the
engineering units fields in the output record. The output record must be modified by the user to
contain the correct engineering units that display at the SLIM. The top of bar and bottom of bar
fields in the output record are initialized to the SCALE TOP and SCALE BOT values by the
algorithm.
If XML2 is to write the set point value to the QLI or QLJ card, then changes to the set point value
(that is, tracking, Operators station raise/lower requests, etc.) are implemented as described
previously. The top of bar, bottom of bar and engineering units parameters of the output point are
used to initialize the set point section of the configuration data on the QLI or QLJ card.
However, if the QLI or QLJ set point value is being written to the QLI or QLJ card by the PVSPSLI
algorithm, then the set point value for this algorithm is not read from the QLI or QLJ card, but is
determined by the last output value. Under these conditions, the XML2 algorithm monitors the QLI
or QLJ card for any raise and lower requests from the SLIM. Raise/lower requests from the SLIM
override any other set point change requests received by this algorithm (that is, tracking,
Operators station raise/lower requests, etc.). If there are no SLIM requests, then the set point
value is changed as described previously. The set point value is only written to the output point.
Neither the set point value nor the configuration data is written to the QLI or QLJ card under these
conditions.
If a card interface is specified, the following, hardware-related errors are set in the second status
word of the analog output record and cause the analog output to have BAD quality:
BIT

DESCRIPTION
2

BAD hardware status. The Power and Card OK bits on the QLI or QLJ card were
not set or the Power and Alive Bits on the QAM card were not set.

Tracking Signals
Tracking and limiting are done through signals passed in the upper 16 bits of the third status word
of the analog point. This algorithm takes the action shown in the following table in response to the
information found in the input signal TRIN:
BIT
16

REF_1100

DESCRIPTION

ACTION

TOUT SIGNAL

Track

Implemented

Not used

599

6.14 XML2

BIT

DESCRIPTION

ACTION

TOUT SIGNAL

17

Track if lower

Ignored

Not used

18

Track if higher

Ignored

Not used

19

Lower inhibit

Ignored

Not used

20

Raise inhibit

Ignored

Not used

21

Not used

No action

Not used

22

Not used

No action

Not used

23

Deviation Alarm

No action

Not used

24

Local Manual mode

No action

Not used

25

Manual mode

No action

Not used

26

Auto mode

No action

Not used

27

Not used

No action

Not used

28

Not used

No action

Not used

29

Not used

No action

Not used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

The high and low limit flags are output to TOUT to be used for display. If the QAM, QLI or QLJ
hardware address is initialized, the quality of OUT is BAD if there are any QAM, QLI or QLJ
hardware errors. Otherwise, the quality of OUT is GOOD when not tracking or set to the quality of
the track input variable when tracking.
Algorithm Record Type = LC
Algorithm Definitions

600

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU-Integer

Data Init

Required

111

Tuning diagram
number

TPSC

R2-Real

Tuning
Constant

Required

100.0

Maximum value of the


point

BTSC

R3-Real

Tuning
Constant

Required

-100.0

Minimum value of the


point

PCNT

X1-Byte

Tuning
Constant

Required

Percent change in
first four seconds

TIME

X2-Byte

Tuning
Constant

Required

25

Number of seconds
remaining for ramp to
full scale

REF_1100

6.14 XML2

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

CARD

X3-Byte

Data Init.

Required

SOFT

Card type:

MIN.
POINT
RECORD

SOFT =No hardware


interface
QLI = QLI or QLJ card
interface
QAM = QAM card
interface
PCI

X5 - Byte

Data Init

Required

PCI Card Number (1,


2)

HWAD

B2 - Integer

Data Init.

Required

Hardware address
(see page 3) of the
QAM / QLI/QLJ card.

Note: The QAM card


hardware address is
the jumpered
address plus one.
INCR

Variable

Optional

Hardware address
(see page 3) of the
Increase contact (in
decimal bytes).

LD

DECR

Variable

Optional

Hardware address
(see page 3) of the
Decrease contact.

LD

OUT

Variable

Required

Analog output
variable

LA

TRIN

Variable

Optional

Tracking analog input


variable

LA

TOUT

Variable

Required

Mode and Status


output signals

LA

REF_1100

601

6.15 XPIDSLI

6.15 XPIDSLI
Description
The XPIDSLI algorithm combines the functions of a PID controller with a soft M/A station interface
on a calculated set point and a soft M/A station interface on the output with a Q-Line Loop
Interface (QLI) or Q-Line Loop Interface with Output Readback (QLJ) card interface. The
algorithm functions in Supervisory, Cascade, Auto, or Manual modes.
Note: You cannot operate this algorithm without a QLI or QLJ card interface.
Functional Symbol

The following modes are available:


XPIDSLI MODE

MODE DISPLAYED

Local

Local

Manual

Manual

Auto

Auto

Cascade

Cascade

Supervisory

Cascade

AT

LIM

In the event of reset, power-up, or failover, both the set point and output values are read from the
card.
CAUTION: You MUST follow Guidelines 1 and 2. Failure to do so could result in a negative
value which causes the process to become uncontrollable.

Guidelines
1. You MUST use PV GAIN and PV BIAS to normalize the process variable inputs to a 0 to 100
percent value. Use this equation: (PV x PV GAIN) + PV BIAS = PV percent.
2. You MUST use SET GAIN and SET BIAS to normalize the set point to a 0 to 100 percent
value. The set point definition depends on which mode is operating: CAS, SUPV, or internal
set point. Use this equation: (SP x SP BIAS) + SP BIAS = set point percent.
3. Determine set point high and low limits with these equations:
set point high limit = (100 - SP BIAS)/SP GAIN
set point low limit = (0 - SP BIAS)/SP GAIN

602

REF_1100

6.15 XPIDSLI

Note: The SCALE TOP and SCALE BOT parameters are used to limit the output value of the
algorithm. These values must always be 100% and 0% respectively when an LIM interfaces to a
QLI or QLJ card.
Supervisory and Cascade Modes
The Increase/Decrease Output keys and the Increase/Decrease Set Point keys on the LIM have
no effect in these modes. Both the set point and output values are written to the card in these
modes.
Auto Mode
The Increase/Decrease Set Point keys on the LIM override any other set point change requests
except digitally entered set points (DES). However, the Increase/Decrease Output keys on the
LIM have no effect in this mode.
Note: A digitally entered set point (DES) is a value entered by the user in a MAC Monitoring
Program tuning diagram. Likewise, a digitally entered output (DEO) is a value entered by the
user.
The internal set point is read from the card, raised or lowered, and written back to the card. Also,
the calculated output value is written to the card in this mode.
Manual Mode
The Increase/Decrease Output keys and the Increase/Decrease Set Point keys on the LIM
override any other set point and output change requests except digitally entered outputs (DEO).
Both the set point and output values are read from the card, either raised or lowered, and then
written back to the card in this mode.
Local Mode
The set point and output values may only be changed by the Increase/Decrease Set Point keys
and the Increase/Decrease Output keys at the LIM in this mode. The algorithm reads the set point
and output values from the card and causes these output values to track the cards values. In this
tracking mode, all set point and output raise and lower requests from the functional processor, the
Operators/Alarm Console or DEO or DES are ignored.
Mode Transfers
The algorithm transfers between the Supervisory, Cascade, Auto, Manual, and Local modes as
follows:

The digital reject signal will reject the algorithm to Manual mode or to Local mode when the
Manual Inhibit feature is ON and when it is TRUE and the quality is not BAD.

The Supervisory Request, Cascade Request, Auto Request and Manual Request signals
from the SUPV, CAS, AUTO and MAN mode request keys on the Operators Keyboard will
switch the algorithm to the desired mode if it is not in Local mode.

The Cascade Request, Auto Request, Manual Request, and Local Request signals from the
CASC, AUTO, MAN and LOC mode request keys on the LIM will switch the algorithm to the
desired mode.

REF_1100

603

6.15 XPIDSLI

The algorithm rejects to Local mode if there are any hardware errors.

On reset/power-up, the algorithm goes to the mode initialized by the Firstpass mode (FP
MODE) parameter unless that mode is blocked by either the Manual Inhibit or Auto Inhibit
features. If both the Manual and Auto Inhibit features are ON, then the Firstpass mode is
Cascade mode. Otherwise, the Firstpass mode is the mode which has its inhibit feature OFF.

If the Quality Reject (QUAL REJ) feature is OFF, then no quality checks are performed on any
of the input variables. Otherwise, the controller automatically rejects to the Manual mode (or
Local mode if the Manual Inhibit feature is ON) when:
The mode is Cascade and the quality of the cascade set point goes BAD or not GOOD,
depending on the Quality Reject flag.
The mode is Supervisory and the quality of the supervisory set point goes BAD or not
GOOD, depending on the Quality Reject flag.
The mode is Cascade, Supervisory or Auto and the quality of the process variable goes
BAD or not GOOD, depending on the Quality Reject flag.

If the algorithm is in a given mode and the quality of one of the points being checked goes
BAD or not GOOD (depending on the Quality Reject flag), then the algorithm rejects to
Manual mode as long as the Manual Inhibit feature is OFF, or to Local mode if the Manual
Inhibit Feature is ON. If the algorithm is in a given mode and the operator tries to select a
mode which has BAD or not GOOD quality (depending on the Quality Reject flag) on one of
the points being checked, then the algorithm remains in the same mode and does not reject.

Regardless of the Quality Reject parameter (QUAL REJ), the input values to the algorithm are
checked for invalid real numbers. In a given mode, the following inputs are checked:
AUTO: process variable input
CASCADE: process variable and cascade input
SUPERVISORY: process variable and supervisory input

If the algorithm is in a given mode and the value of one of the inputs being checked become
invalid, the algorithm rejects to Manual mode, providing the Manual Inhibit feature if OFF, or
to Local mode if the Manual Inhibit Feature is ON. If the algorithm is in a given mode and the
operator tries to select a mode where one of the input values being checked is invalid, the
algorithm remains in the same mode and does not reject.

The track input value is also checked for invalid real numbers when the algorithm is told to
track. If the algorithm is told to track and the track input value is invalid, then the algorithm
rejects to Manual mode, providing the Manual Inhibit feature is OFF, or to Local mode if the
Manual Inhibit Feature is ON. In all modes, the track request is ignored when the track input
value is invalid.

Note: The Auto and Manual Inhibit flags prevent the algorithm from going to either the Auto or
Manual modes, respectively. The algorithm remains in the previous mode when it tries to enter a
mode that is blocked by one of these Inhibit flags.
The set point top of scale, bottom of scale and units parameters for the configuration data are
taken from the top of bar, bottom of bar and the first four characters of the engineering units fields
in the set point output record. The set point output record must be modified by the user to contain
the correct engineering units that will be displayed at the LIM. The set point top of bar and bottom
of bar are initialized by the XPIDSLI algorithm according to the GAIN and BIAS parameters
specified.

604

REF_1100

6.15 XPIDSLI
The configuration data for the set point and for the output sections is written to the card. If the
switch on the card is not the Ignore EEPROM position, the data is saved in EEPROM on the card.
The Reverse (Inverse) Voltage configuration parameter on the card causes the output voltage to
be zero for an output value of 100% and to be full voltage for an output value of 0%. The default
for this configuration parameter is Normal Voltage (that is, the output voltage is full voltage for an
output of 100% and is zero volts for an output of 0%). In order to use the Reverse (Inverse)
Voltage option, the Inverse Voltage, INV VOLT, configuration parameter in this algorithm must be
set to ON.
CAUTION: Due to the possibility of causing a process upset, use extreme care when reversing
the output voltage of the QLI or QLJ card while online.
The configuration is not written to the card when it is in Local mode.
Note: When the QLI or QLJ is configured as an electric drive card type, a difference between
the actual position and the demand value <=1% will cause no raise or lower action to be taken.
A difference >= 5% will cause fast raise or lower action to be taken.
These values are fixed and cannot be changed. The slow rates specified by the ONOFF TIME
Parameter will determine the raise or lower action taken when the difference is between 1% and
5%.
The same slewing rates are used for both the output and the set point changes.
The interface keys of the Operators Keyboard are:
KEY

USE

AUTO function key

Auto mode request

MAN function key

Manual mode request

CASC function key

Cascade mode request

SUPV function key

Supervisory mode request

Set Point Increase function key

Raise the set point

Output Increase function key

Raise the output

Output Decrease function key

Lower the output

Optional Function
The algorithm has the option of using either a digital or a packed point for the manual reject signal
(REJ).
If the reject input is a packed point and the requested mode is valid for a given type of algorithm,
a packed reject input will cause the algorithm to reject to the requested mode as long as it is not
blocked by other options such as MANUAL or AUTO INHIBIT.
MODE REQUEST

BIT

Manual

Auto

REF_1100

605

6.15 XPIDSLI

MODE REQUEST

BIT

Supervisory

Cascade

DDC

Tracking Signals
Tracking is incorporated into the algorithm to ensure a bumpless transfer between each of the
modes. External tracking and limiting are done through signals passed in the upper 16 bits of the
third status word of the analog track point. This algorithm takes the following action in response to
the information found in the input signal TRIN:
BIT

DESCRIPTION

ACTION

TOUT SIGNAL

16

Track

Implemented

Passed through or set TRUE


when not in Cascade mode

17

Track if lower

Implemented when not in


Manual mode*

Not used

18

Track if higher

Implemented when not in


Manual mode*

Not used

19

Lower inhibit

Implemented*

Passed through**

20

Raise inhibit

Implemented*

Passed through**

21

Not used

No action

Not used

22

Not used

No action

Not used

23

Deviation alarm

No action

Set when the deviation of


process variable and set point is
greater than the given Deviation
Alarm deadband

24

Local Manual mode

No action

Local mode

25

Manual mode

No action

Manual mode

26

Auto mode

No action

Auto mode

27

Supervisory mode

No action

Supervisory mode

28

Cascade mode

No action

Cascade mode

29

DDC mode

No action

No used

30

Low limit reached

No action

Low limit reached

31

High limit reached

No action

High limit reached

* Only when the Track signal is not present.


** Only when the Track signal is not present; the signals are set according to the definitions given in
"Understanding tracking" (see page 9).

606

REF_1100

6.15 XPIDSLI
The high and low limit flags, the mode, and the tracking signals from the algorithm are output as
TOUT, to be used for display and by an upstream algorithm. When tracking, the quality of the
output is set to the quality of the track input variable. Otherwise, the qualities of the outputs are
set according to the following if there are no hardware errors:
MODE

SET POINT QUALITY

OUTPUT QUALITY

Supervisory

Quality of SUPV

Worse quality of PV or SUPV

Cascade

Quality of CAS

Worse qualtiy of PV or CAS

Auto

GOOD quality

Quality of PV

Manual

Good quality

GOOD quality

Other outputs consist of:


1. The set point for the PID (in the same units as the cascade input).
2. A real analog value representing the process variable deviation from the set point (in percent
of full scale).
If the algorithm calculates an invalid real number for the output, the quality of the output is
set to BAD and the output value will be invalid. Consequently, if an invalid value is
entered as an input to the algorithm, or if the algorithm generates an invalid value for the
output, the drop is placed into alarm.
If the algorithm generates an invalid track output value, the cascade input value is used
as the track output unless it is invalid. The track output value is not updated if both the
calculated track output and the cascade input values are invalid.
If the algorithm generates an invalid real number as the new value of the set point, the
internal set point is not updated. However, when the set point value becomes invalid the
drop is placed into alarm, and the quality of the set point is set to BAD.
Bit 10 is set in the second status word of the output record for one loop whenever the output
configuration data section is reconfigured. Bit 10 is set in the second status word of the set point
record for one loop whenever the set point configuration data section is reconfigured. This does
not affect the quality of either record (that is, the output and/or set point quality is not set BAD
when the card is reconfigured).
The following hardware related errors are set in the second status word of the analog output
record and cause the analog output to have BAD quality.
BIT

REF_1100

DESCRIPTION
0

Invalid hardware address. The user specified a hardware address outside the legal range
of 0 to 3FCH.

Write verification error. The algorithm tried to reconfigure the output section of the card but
was unable to do so.

Bad hardware status. The power and card OK bits on the card were not set

Configuration error. The algorithm tried to reconfigure the card for two consecutive loops.
This could be caused by another algorithm having the same address, where both
algorithms are trying to reconfigure the same section of the card.

Normalization error. The Read back error failed on QLJ; the mode is not changed. Position
feedback signal below 3.4 milliamps on QLI configured as an electric drive card type; QLI
goes into Failed Local mode. Once the signal returns above 3.7 milliamps, the error clears
and BAD quality is removed. QLI goes to Local mode if LIM is present; otherwise, it goes
into Manual mode.

607

6.15 XPIDSLI
Any of these errors will cause the algorithm to reject to Local mode. If an invalid hardware
address or bad hardware status error caused the algorithm to reject to Local, the quality will
remain BAD on the output, and the algorithm will remain in Local mode until the error is cleared.
If a write verification error or configuration error caused the algorithm to reject to Local, the quality
will become GOOD on the output and the algorithm will remain in Local mode until Local mode is
exited via the LIM. The error bit in the second status word will remain set in Local mode, even
though the quality is GOOD, so as to enable the user to determine the cause of the reject.
Note: If the card determines that there is a LIM communications error while it is in Local mode, it
will reject the card to Manual mode. The algorithm will also go to Manual mode.
The following hardware related errors are set in the second status word of the analog set point
record and cause the analog set point to have BAD quality:
BIT

DESCRIPTION
0

Invalid hardware address. The user specified a hardware address outside the legal range
of 0 to 3FCH.

Write verification error. The algorithm tried to reconfigure the set point section of the card
but was unable to do so.

Bad hardware status. The power and card OK bits on the card were not set

Configuration error. The algorithm tried to reconfigure the card for two consecutive loops.
This could be caused by another algorithm having the same address, where both
algorithms are trying to reconfigure the same section of the card.

Any of these errors will cause the algorithm to reject to Local mode. If an invalid hardware
address or bad hardware status error caused the algorithm to reject to Local, the quality will
remain BAD on the set point and the algorithm will remain in Local mode until the error is cleared.
If a write verification error or configuration error caused the algorithm to reject to Local, the quality
will become GOOD on the set point and the algorithm will remain in Local mode until Local mode
is exited via the LIM. The error bit in the second status word will remain set in Local mode (even
though the quality if GOOD) to enable the user to determine the cause of the reject.
Algorithm Record Type = LC
Algorithm Definitions

608

N AM E

LC ALG.
RECORD
FIELD

TYPE

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIAG

LU Integer

Data Init.

223

Tuning diagram number

--

ERRD

T2 - Real

Tuning
Constant

0.0

PID error deadband

--

PGAIN

S6 - Real

Selectable

1.0

PID proportional gain (>=0). If the


proportional gain equals zero, the
proportional part will not be
included in the output

LA

REF_1100

6.15 XPIDSLI

N AM E

LC ALG.
RECORD
FIELD

TYPE

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

INTG

S7 - Real

Selectable

10.0

PID integral reset time in seconds.


If the reset time equals zero, the
integral part will not be included in
the output. If the reset time does
not equal zero, its value must be
greater than or equal to the
sampling time.

LA

DGAIN*

S8 - Real

Selectable

0.0

PID derivative gain (>=0). If the


derivative gain equals zero, the
derivative part will not be included
in the output and the rate constant
will be set to half the sampling time
when in Auto, Cascade, or
Supervisory modes and the
algorithm is not tracking.

LA

If the derivative gain does not


equal zero, the derivative rate
constant must be greater than or
equal to half the sampling time.
DRAT

S9 - Real

Tuning
Constant

0.0

PID derivative rate constant in


seconds.

--

TYPE

Y0 - Bits 0
and 1

Data Init.

NORMAL

Type of PID controller:

--

NORMAL: Regular PID control


ESG: PID control with error
squared on the proportional gain
term
ESI: PID control with error squared
on the integral term

ACTN

Y0 - Bit 2

Data Init.

INDIRECT

Direction flag:

--

INDIRECT: Error = Set point


process variable
DIRECT: Error = Process
variable - set point
* These fields may be displayed and tuned at the LIM.
TPSC

R7 - Real

Tuning
Constant

100.0

Maximum value of the output point

--

BTSC

R8 - Real

Tuning
Constant

0.0

Minimum value of the output point

--

PVG

S1 - Real

Tuning
Constant

1.0

Gain on the process variable input


and set point. The gain on the set
point should never be initialized to
zero; if it is, an invalid real number
is generated as the new set-point
value.

--

PVB

S2 - Real

Tuning
Constant

0.0

Bias on the process variable input


and set point

--

REF_1100

609

6.15 XPIDSLI

N AM E

LC ALG.
RECORD
FIELD

TYPE

DEFAULT
VALUE

DESCRIPTION

FP

X6 - Bits 5
and 6

Data Init.

MANUAL

Firstpass mode (algorithm goes to


this mode on reset/power-up):

MIN.
POINT
RECORD
--

MANUAL: Manual mode


AUTO: Auto mode
CASCADE: Cascade mode
MINH

Y0 - Bit 4

Data Init.

OFF

Manual inhibit:

--

OFF: Manual mode is allowed.


ON: Manual mode is not allowed.
AINH

Y0 - Bit 5

Data Init.

OFF

Auto inhibit:

--

OFF: Auto mode is allowed.


ON: Auto mode is not allowed.
QUAL

Y0 - Bits 6
and 7

Data Init.

BAD

Quality reject type (only has


meaning if Manual inhibit is OFF):

--

BAD: Algorithm rejects to Manual


mode when the quality of the point
being checked is BAD.
NOTGOOD: Algorithm rejects to
Manual mode when the quality of
the point being checked is not
GOOD.
OFF: The quality of the input
variables is not checked and does
not cause the algorithm to reject to
Manual mode.
STRK

Y0 - Bit 3

Data Init.

OFF

Set point tracks process variable in


Manual mode:

--

ON: SET POINT tracks process


variable.
OFF: SET POINT does not track
process variable.

610

DEVD

T1 - Real

Tuning
Constant

5.0

Deviation alarm deadband

--

ALRM

G4 Integer

Tuning
Constant

Number of seconds for No


Deviation Alarm signal when the
set point changes by more than
one percent.

--

TRAT

R9 - Real

Tuning
Constant

2.5

Track ramp rate (units per second)

--

PCNT

X1 - Byte

Data Init.

Percentage of change in first four


seconds

--

TIME

X2 - Byte

Data Init.

25

Seconds left for ramp to full scale

--

REF_1100

6.15 XPIDSLI

N AM E

LC ALG.
RECORD
FIELD

TYPE

DEFAULT
VALUE

DESCRIPTION

INVR

X3 - Bit 0

Data Init.

OFF

Inverse voltage from card to drive:

MIN.
POINT
RECORD
--

OFF: Voltage from card to drive is


normal.
ON: Voltage from card to drive is
reversed.
HWAD

B2 Integer

Data Init.

Hardware address of QLI card;


must be entered in decimal bytes

--

CARD

X4 - Byte

Data Init.

PCI card number

--

ONOFF

G6 Integer

Data Init.

771

Slow raise/lower pulse on/off times


for electric drive signals (low byte =
Off time; high byte = On time) in
units of 0.1 or 0.004 seconds. This
field is used only for the QLI card.

--

Note: 771 = 0303H


Two ranges of values (0.1 or 0.004
second resolution) are available for
the electric drive slow action pulse
on/off values (ONOFF TIME field):
For 0.1 second resolution, byte
values in the range 0 to 127 (00 to
7FH) are used. For example, 03H
represents a 0.3 second pulse time
(3 x 0.1).
For 0.004 second resolution, byte
values in the range 128 to 255 (80
to FFH) are used to represent the
range 0 to 127. For example, 83H
represents a 0.012 second pulse
time (3 x 0.004).
The second range of values (0.004
second resolution) is available only
with Group 3 QLI cards (3QLI31).
PRAT

X9 Byte

Data Init.

Priority runback rate in percent per


second for an electric drive QLI
card type.

--

PV

--

Variable

--

Process variable analog input

LA

CAS

--

Variable

--

Cascade variable analog input


(optional); the user may draw a line
to initialize a point.

LA

TOUT

--

Variable

--

Mode and status track value for


CAS variable.

LA

SUPV

--

Variable

--

Supervisory variable analog input


(optional); the user may draw a line
to initialize a point.

LA

REF_1100

611

6.15 XPIDSLI

N AM E

612

LC ALG.
RECORD
FIELD

TYPE

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

REJ

--

Variable

--

Manual Reject digital input signal


(optional); the user may enter the
name of a point.

LD, LP

OUT

--

Variable

--

Analog output variable

LA

TRIN

--

Variable

--

Tracking analog input variable

LA

SET POINT

--

Variable

--

Set point selected for the PID


controller

LA

DEVIATION

--

Variable

--

Error between process variable


and set point for PID

LA

REF_1100

E C T I O N

Foundation Fieldbus algorithms

IN THIS SECTION
Ovation Fieldbus algorithms and function blocks............................................................ 613
FFAI................................................................................................................................. 615
FFAO............................................................................................................................... 618
FFDI ................................................................................................................................ 621
FFDO............................................................................................................................... 624
FFISEL/FFISELX............................................................................................................. 627
FFMAI.............................................................................................................................. 635
FFMAO............................................................................................................................ 638
FFMDI ............................................................................................................................. 640
FFMDO............................................................................................................................ 644
FFPID .............................................................................................................................. 648

7.1

Ovation Fieldbus algorithms and function blocks


Fieldbus devices are digital field instruments containing processors that monitor the performance
and state of the device. Self-contained software modules known as function blocks reside in the
Fieldbus devices.
While function blocks reside in a device, the Ovation control system uses algorithms on control
sheets that mimic the function blocks. Therefore, Fieldbus devices can be controlled by Ovation
Fieldbus algorithms and can be part of an Ovation control scheme.
Foundation Fieldbus allows you to execute control algorithms in the Controller, in the Fieldbus
devices, or in both. However, the key to successful control is making an algorithm choice that best
supports your plants needs.
Examples
The Ovation Controller can handle Fieldbus function block to Fieldbus function block or Ovation
Algorithm to Fieldbus function block control schemes. For example:
Scenario 1

REF_1100

613

7.1 Ovation Fieldbus algorithms and function blocks

Scenario 2

7.1.1 STAT bits used with function blocks


The STAT point can be used to indicate problems with a function block.

614

BITS

DESCRIPTION

0-3

Fieldbus communication errors:


3 - Invalid device name.
4 - Gateway not configured.
6 - No Fieldbus map file.
7 - Communication time out.
8 - Loss of communication with the Gateway.
9 - Cannot write link data.
11 - Invalid function block.
12 - Invalid function block parameter.

4-7

Indicate Mode/Tuning Information:


1 - Mode change requested.
2 - Tune change requested.

8 - 11

Tuning/Mode Errors:
1 - Error changing modes.
2 - Error tuning parameter.
3 - Algorithm tuning parameter is mismatched with the function block.
4 - Invalid mode.

12 - 15

Mode Requested:
1 - Request Auto mode.
2 - Request Manual mode.
3 - Request Cascade mode.

REF_1100

7.2 FFAI

7.2

FFAI
Description
The FFAI algorithm is used to interface to a Fieldbus Analog Input function block. The FFAI
algorithm shadows a single measurement value and status from a fieldbus device to an Ovation
point (Out).
The STAT point indicates status and error information of the function block. See the STAT bits
table (see page 614) for bit definitions.
The PV point displays the Process Variable value and status from the function block. The TOUT
point displays the algorithms mode and tracking signals.
The FFAI algorithm supports Manual and Auto modes. These modes are tunable from both the
Ovation tuning graphic as well as the Fieldbus Module Engineering window in the Developer
Studio.
Fieldbus algorithm quality
All Fieldbus algorithms shadow the actual Fieldbus function block quality unless a communication
error occurs. In the case of a communication error, the output quality will be defined by the FERR
parameter. If the actual Fieldbus function block output quality is BAD or the FERR parameter is
set to BAD and a communication error occurs, the output quality will be marked as BAD and the
output value will latch at the last known GOOD quality value. The AMODE parameter will display
an unknown mode or no mode in this scenario.
Functional Symbol

Tracking Signals
The high and low limits flags and tracking signals from the algorithm are output to TOUT, and are
to be used for display and by an upstream algorithm. All Fieldbus function blocks support different
modes, which is also reflected in the TOUT point. The following information is TOUTs output
associated with the algorithm.
BIT

DESCRIPTION

TOUT SIGNAL

16

Track

TRUE when mode is Auto/Manual/Local.

17

Track if lower

Not used.

18

Track if higher

Not used.

19

Lower inhibit

Not used.

20

Raise inhibit

Not used.

21

Conditional Track

Not used.

REF_1100

615

7.2 FFAI

BIT

DESCRIPTION

TOUT SIGNAL

22

Not used

Not used.

23

Deviation Alarm

Not used.

24

Local Manual mode

Local mode.

25

Manual mode

Manual mode.

26

Auto mode

Auto mode.

27

Supervisory mode

Not used.

28

Cascade mode

Not used.

29

DDC mode

Not used.

30

Low limit reached

Low limit reached.

31

High limit reached

High limit reached.

Algorithm Record Type = LC


Algorithm Definitions
OV ATION
P AR AM

FIELDBUS
P AR AM

DIAG
NORM

MODE.
NORMAL

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

LU - Byte

Required

130

Tuning diagram number.

X3 - Byte

Required

Manual

Normal mode for FFAI.


The choices are:
MANUAL and AUTO.

QUAL

X4 - Byte

Required

Bad

If Fieldbus quality is
uncertain, set the output
points to one of the
following qualities: BAD,
GOOD, FAIR, or POOR.

FERR

X5 - Byte

Required

Bad

If an error occurs
between reading/writing
to the Fieldbus device,
then set the output
points quality to: BAD,
GOOD, FAIR, or POOR.

Required

Required analog output


point.

LA

Required

Mode and tracking


signals

LA

Optional

Optional analog output


point for process
variable.

LA

Required

Required output point.


This point contains status
(see page 614) of the
Fieldbus algorithm.

LP

OUT

OUT

TOUT
PV

STAT

616

TYPE

PV

REF_1100

7.2 FFAI

OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

AMODE

BLOCK_
MODE_
ACTUAL

Y0 Variable

Optional

REF_1100

DEFAULT
VALUE
--

DESCRIPTION

MIN.
POINT
REC.

Actual mode of the


function block. The
modes display in decimal
format:
0 = Invalid or No mode
1 = Remote Output
(Rout)
2 = Remote Cascade
(Rcas)
3 = Cascade (Cas)
4 = Automatic (Auto)
5 = Manual (Man)
6 = Local Override (LO)
7 = Initialization Manual
(IMan)
8 = Out of Service
(O/S)

LA

617

7.3 FFAO

7.3

FFAO
Description
The FFAO algorithm is used to interface to a Fieldbus Analog Output function block. The FFAO
algorithm shadows a single measurement value and status from a Fieldbus device to the Ovation
point (Out).
The STAT point indicates status and error information of the function block. See the STAT bits
table (see page 614) for bit definitions.
The FFAO algorithm supports Manual, Auto and Cascade modes. These modes are tunable from
both the Ovation tuning graphic as well as the Fieldbus Module Engineering window in the
Developer Studio.
Fieldbus algorithm quality
All Fieldbus algorithms shadow the actual Fieldbus function block quality unless a communication
error occurs. In the case of a communication error, the output quality will be defined by the FERR
parameter. If the actual Fieldbus function block output quality is BAD or the FERR parameter is
set to BAD and a communication error occurs, the output quality will be marked as BAD and the
output value will latch at the last known GOOD quality value. The AMODE parameter will display
an unknown mode or no mode in this scenario.
Functional Symbol

Tracking Signals
The high and low limits flags and tracking signals from the algorithm are output to TOUT, and are
to be used for display and by an upstream algorithm.

618

BIT

DESCRIPTION

TOUT SIGNAL

16

Track

TRUE when mode is Auto/Manual/Local.

17

Track if lower

Not used.

18

Track if higher

Not used.

19

Lower inhibit

TRUE when output value is at the low limit.

20

Raise inhibit

TRUE when output value is at the high limit.

21

Conditional Track

Not used.

22

Not used

Not used.

23

Deviation Alarm

Not used.

24

Local Manual mode

Local mode.

25

Manual mode

Manual mode.

REF_1100

7.3 FFAO

BIT

DESCRIPTION

TOUT SIGNAL

26

Auto mode

Auto mode.

27

Supervisory mode

Not used.

28

Cascade mode

Cascade mode.

29

DDC mode

Not used.

30

Low limit reached

Low limit reached.

31

High limit reached

High limit reached.

Algorithm Record Type = LC


Algorithm Definitions
OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

LU - Byte

Required

131

Tuning diagram
number.

MODE.
NORMAL

X3 - Byte

Required

Manual

Normal mode for


FFAO. The choices
are: MANUAL,
AUTO, CASCADE.

X4 - Byte

Required

Bad

If Fieldbus quality is
uncertain, set the
output points to one
of the following
qualities: Bad,
Good, Fair, or Poor.

X5 - Byte

Required

Bad

If an error occurs
between
reading/writing to
the Fieldbus device,
then set the output
points quality to:
Bad, Good, Fair, or
Poor.

Bad

Required analog
input point.

LA

DIAG
NORM

QUAL

MIN.
POINT
REC.

FERR

IN1

CAS_IN

Required

TOUT

BKCAL_OUT

Required

Mode and tracking


signals.

LA

OUT

OUT

Optional

Optional analog
output point.

LA

PV

PV

Optional

Optional analog
output point for
process variable.

LA

Required

Required output
point. This point
contains status (see
page 614) of the
Fieldbus algorithm.

LP

STAT

REF_1100

619

7.3 FFAO

620

OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

AMODE

BLOCK_MODE_
ACTUAL

Y0 Variable

Optional

DEFAULT
VALUE
--

DESCRIPTION

MIN.
POINT
REC.

Actual mode of the


function block. The
modes display in
decimal format:
0 = Invalid or No
mode
1 = Remote
Output (Rout)
2 = Remote
Cascade (Rcas)
3 = Cascade
(Cas)
4 = Automatic
(Auto)
5 = Manual (Man)
6 = Local Override
(LO)
7 = Initialization
Manual (IMan)
8 = Out of Service
(O/S)

LA

REF_1100

7.4 FFDI

7.4

FFDI
Description
The FFDI algorithm is used to interface to a Fieldbus Discrete Input function block. The FFDI
algorithm shadows a single discrete input and status from a two-state field to an Ovation point
(OUT).
The STAT point indicates status and error information of the function block. See the STAT bits
table (see page 614) for bit definitions.
The PV point displays the Process Variable value and status from the function block. The TOUT
point displays the algorithms mode and tracking signals.
The FFDI algorithm supports Manual and Auto modes. These modes are tunable from both the
Ovation tuning graphic as well as the Fieldbus Module Engineering window in the Developer
Studio.
Some Fieldbus device manufacturers put additional information in bits 1 through 7 of the
value/status register. To access these bits, select "octet" in the Type parameter field (see the
Algorithm Definitions table).
Fieldbus algorithm quality
All Fieldbus algorithms shadow the actual Fieldbus function block quality unless a communication
error occurs. In the case of a communication error, the output quality will be defined by the FERR
parameter. If the actual Fieldbus function block output quality is BAD or the FERR parameter is
set to BAD and a communication error occurs, the output quality will be marked as BAD and the
output value will latch at the last known GOOD quality value. The AMODE parameter will display
an unknown mode or no mode in this scenario.
Functional Symbol

Tracking Signals
The high and low limits flags and tracking signals from the algorithm are output to TOUT, and are
to be used for display and by an upstream algorithm. All Fieldbus function blocks support different
modes, which is also reflected in the TOUT point. The following information is TOUTs output
associated with the algorithm.
BIT

DESCRIPTION

TOUT SIGNAL

16

Track

TRUE when mode is Auto/Manual/Local.

17

Track if lower

Not used.

18

Track if higher

Not used.

REF_1100

621

7.4 FFDI

BIT

DESCRIPTION

TOUT SIGNAL

19

Lower inhibit

Not used.

20

Raise inhibit

Not used.

21

Conditional Track

Not used.

22

Not used

Not used.

23

Deviation Alarm

Not used.

24

Local Manual mode

Local mode.

25

Manual mode

Manual mode.

26

Auto mode

Auto mode.

27

Supervisory mode

Not used.

28

Cascade mode

Not used.

29

DDC mode

Not used.

30

Low limit reached

Low limit reached.

31

High limit reached

High limit reached.

Algorithm Record Type = LC


Algorithm Definitions
OV ATION
P AR AM
DIAG
NORM

622

FIELDBUS
P AR AM

MODE.
NORMAL

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

LU - Byte

Required

134

Tuning diagram
number.

X3 - Byte

Required

Manual

Normal mode for


FFDI. The choices
are: MANUAL and
AUTO.

QUAL

X4 - Byte

Required

Bad

If Fieldbus quality is
uncertain, set the
output points to one
of the following
qualities: BAD,
GOOD, FAIR, or
POOR.

FERR

X5 - Byte

Required

Bad

A field in the
algorithm record. If
an error occurs
between
reading/writing to
the Fieldbus device,
then set the output
points quality to:
BAD, GOOD, FAIR,
or POOR.

REF_1100

7.4 FFDI

OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

OUT

OUT_D

TOUT
PV

PV_D

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

X9 - Byte

Required

Bit

Read output value


as a bit or octet.
The choices are:
Bit
Octet

MIN.
POINT
REC.

Optional

Optional digital
output point.

LD

Required

Mode and tracking


signals.

LA

Optional

Optional digital
output point for
process variable.

LD

STAT

Required

Required output
point. This point
contains status (see
page 614) of the
Fieldbus algorithm.

LP

POUT

Optional

Optional packed
output point. Allows
you to specify which
bits to use from the
packed point.

LP

Optional

--

Actual mode of the


function block. The
modes display in
decimal format:
0 = Invalid or No
mode
1 = Remote
Output (Rout)
2 = Remote
Cascade (Rcas)
3 = Cascade
(Cas)
4 = Automatic
(Auto)
5 = Manual (Man)
6 = Local Override
(LO)
7 = Initialization
Manual (IMan)
8 = Out of Service
(O/S)

LA

AMODE

REF_1100

BLOCK_
MODE_
ACTUAL

Y0 Variable

623

7.5 FFDO

7.5

FFDO
Description
The FFDO algorithm is used to interface to a Fieldbus Discrete Output function block. The FFDO
algorithm shadows a discrete value and status from a fieldbus device to an Ovation point (OUT).
The STAT point indicates status and error information of the function block. See the STAT bits
table (see page 614) for bit definitions.
The FFDO algorithm supports Manual, Auto, and Cascade modes. These modes are tunable from
both the Ovation tuning graphic as well as the Fieldbus Module Engineering window in the
Developer Studio.
Some Fieldbus device manufacturers put additional information in bits 1 through 7 of the
value/status register. To access these bits, select "octet" in the Type parameter field (see the
Algorithm Definitions table).
Fieldbus algorithm quality
All Fieldbus algorithms shadow the actual Fieldbus function block quality unless a communication
error occurs. In the case of a communication error, the output quality will be defined by the FERR
parameter. If the actual Fieldbus function block output quality is BAD or the FERR parameter is
set to BAD and a communication error occurs, the output quality will be marked as BAD and the
output value will latch at the last known GOOD quality value. The AMODE parameter will display
an unknown mode or no mode in this scenario.
Functional Symbol

Tracking Signals
The high and low limits flags and tracking signals from the algorithm are output to TOUT, and are
to be used for display and by an upstream algorithm. All fieldbus function blocks support different
modes, which is also reflected in the TOUT point. The following information is TOUTs output
associated with the algorithm.

624

BIT

DESCRIPTION

TOUT SIGNAL

16

Track

TRUE when mode is Auto/Manual/Local.

17

Track if lower

Not used.

18

Track if higher

Not used.

19

Lower inhibit

TRUE when output value is at the low limit.

20

Raise inhibit

TRUE when output value is at the high limit.

21

Conditional Track

Not used.

REF_1100

7.5 FFDO

BIT

DESCRIPTION

TOUT SIGNAL

22

Not used

Not used.

23

Deviation Alarm

Not used.

24

Local Manual mode

Local mode.

25

Manual mode

Manual mode.

26

Auto mode

Auto mode.

27

Supervisory mode

Not used.

28

Cascade mode

Cascade mode.

29

DDC mode

Not used.

30

Low limit reached

Low limit reached.

31

High limit reached

High limit reached.

Algorithm Record Type = LC


Algorithm Definitions
OV ATION
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

LU - Byte

Required

135

Tuning diagram
number.

MODE.
NORMAL

X3 - Byte

Required

Manual

Normal mode for


FFDO. The choices
are: MANUAL,
AUTO, and
CASCADE.

QUAL

X4 - Byte

Required

Bad

If Fieldbus quality is
uncertain, set the
output points to one
of the following
qualities: Bad, Good,
Fair, or Poor.

FERR

X5 - Byte

Required

Bad

If an error occurs
between
reading/writing to the
Fieldbus device,
then set the output
points quality to:
Bad, Good, Fair, or
Poor.

TYPE

X9 - Byte

Required

Bit

Read output value


as a bit or octet. The
choices are:
Bit
Octet

Optional

DIAG
NORM

IN

REF_1100

FIELDBUS
P AR AM

CAS_IN_D

Required digital input


point.

LD

625

7.5 FFDO

OV ATION
P AR AM

FIELDBUS
P AR AM

TOUT
OUT

626

OUT

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Required

Mode and tracking


signals.

LA

Optional

Required digital
output point.

LD

STAT

Required

Required output
point. This point
contains status (see
page 614) of the
Fieldbus algorithm.

LP

PIN

Optional

Optional packed
input point. Allows
you to specify which
bit to use from the
packed point.

LP

Required

Track out value. For


use with
BKCAL_IN_D.

LD

Optional

--

Actual mode of the


function block. The
modes display in
decimal format:
0 = Invalid or No
mode
1 = Remote Output
(Rout)
2 = Remote
Cascade (Rcas)
3 = Cascade (Cas)
4 = Automatic
(Auto)
5 = Manual (Man)
6 = Local Override
(LO)
7 = Initialization
Manual (IMan)
8 = Out of Service
(O/S)

LA

BKCAL

BKCAL_OUT_D

AMODE

BLOCK_MODE_
ACTUAL

Y0 Variable

REF_1100

7.6 FFISEL/FFISELX

7.6

FFISEL/FFISELX
Description
The FFISEL algorithm interfaces to a Foundation Fieldbus Input Selector function block. The Input
Selector function block generates an output selected from up to four inputs based on a configured
selection type. The following selection types are used:

Maximum.

Minimum.

Middle.

Average.

First GOOD (first input with GOOD quality).

The FFISEL algorithm shadows the Input Selector function block input and output values. The
Input Selector function block does not support back calculation so Ovation tracking is not
supported.
The STAT point indicates status and error information of the function block. See the STAT bits
table (see page 614) for bit definitions.
The FFISEL algorithm supports Manual and Auto modes.
The FFISEL algorithm also supports the Extended Input Selector function block, as implemented
in Rosemount fiedl devices. The extended function block is often referred to as ISELX. The
extended function block adds four additional inputs for a total of eight.
Fieldbus algorithm quality
All Fieldbus algorithms shadow the actual Fieldbus function block quality unless a communication
error occurs. In the case of a communication error, the output quality will be defined by the FERR
parameter. If the actual Fieldbus function block output quality is BAD or the FERR parameter is
set to BAD and a communication error occurs, the output quality will be marked as BAD and the
output value will latch at the last known GOOD quality value. The AMODE parameter will display
an unknown mode or no mode in this scenario.
Functional Symbol for FFISEL

REF_1100

627

7.6 FFISEL/FFISELX
Functional Symbol for FFISELX

Direct Entered Output (DEO) Support


The FFISEL algorithm supports Direct Entered Output functionality for the OUT parameter, but
only in Manual mode.
Signal Diagram Support
The FFISEL algorithm supports the capability to change the Fieldbus mode between MAN and
AUTO from an Ovation Signal Diagram. A mode indication displays on the Signal Diagram. The
Signal Diagram provides an entry field for the Direct Entered Output of the OUT parameter.
Controller Failover Support
During Controller failover and also during Fieldbus port download, it may not be possible to get
GOOD values from the device. The FFISEL algorithm supports failover and port download by
using the last GOOD values and quality during this time.

628

REF_1100

7.6 FFISEL/FFISELX
SELECT_TYPE Parameter
The SELECT_TYPE parameter configures the type of selection the Input Selector function block
performs. It is a contained parameter; and therefore, is not available as an input to the FFISEL
algorithm. Selection processing takes place after input processing. Inputs with corresponding
Disable inputs set to TRUE are discarded. Inputs whose status is BAD are discarded. If no inputs
or fewer than those defined in MIN_GOOD remain, selection does not take place.
The SELECT_TYPE parameter must be entered through the Control Builder Properties Editor
(see Ovation Control Builder User Guide for more information on the Property Editor).
The following table shows the select types and corresponding values:
VALUE

SELECTION TYPE

First Good -- transfer the first remaining input to the output of the
function block.

Minimum -- transfer the lowest remaining input value to the output of


the function block.

Maximum -- transfer the highest remaining input value to the output of


the function block.

Middle -- transfer the middle value to the output. If two inputs are in the
middle, transfer the average of the two.

Average -- transfer the average of the remaining inputs to the output of


the function block.

Tracking Signals
The Foundation Fieldbus Input Selector function block does not support back calculation so
Ovation tracking is not supported. However, the TOUT parameter is still used to indicate the
mode of the underlying function block.
BIT

DESCRIPTION

TOUT SIGNAL

16

Track

Not used.

17

Track if lower

Not used.

18

Track if higher

Not used.

19

Lower inhibit

Not used.

20

Raise inhibit

Not used.

21

Conditional track

Not used.

22

Not used

Not used.

23

Deviation alarm

Not used.

24

Local Manual mode

Not used.

25

Manual mode

Manual mode.

26

Auto mode

Auto mode.

27

Supervisory mode

Not used.

28

Cascade mode

Not used.

REF_1100

629

7.6 FFISEL/FFISELX

BIT

DESCRIPTION

TOUT SIGNAL

29

DDC mode

Not used.

30

Low limit reached

Not used.

31

High limit reached

Not used.

Extended Input Selector Function Block Support


The FFISEL algorithm also supports the Extended Input Selector function block as implemented
in Rosemount field devices. The extended function block is often referred to as ISELX, and adds
four additional inputs IN5 through IN8. It also adds four disable inputs, DIS5 through DIS8. An
additional output, DOUT, indicates an alarm state for the function block's analog output.
Two functional symbols are defined for the FFISEL algorithm. One symbol supports the Input
Selector function block and has four analog inputs. The second symbol supports the extended
Input Selector function block (ISELX) and has eight analog inputs, eight digital inputs, and the
additional digital output, DOUT. Both symbols display in the Control Builder's Add Algorithm
dialog box (see Ovation Control Builder User Guide for more information on the Add Algorithm
dialog box).
Note: The Developer Studio view of the FFISEL algorithm will show all of the possible
parameters (IN1-IN8 and DIS1-DIS8) whether it is extended or not.
Algorithm Record Type = LC
Algorithm Definitions
OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

IN_1

Variable

Optional

--

Optional analog
input point.

LA

IN2

IN_2

Variable

Optional

--

Optional analog
input point.

LA

IN3

IN_3

Variable

Optional

--

Optional analog
input point.

LA

IN4

IN_4

Variable

Optional

--

Optional analog
input point.

LA

IN5*

IN_5

Variable

Optional

--

Optional analog
input point. Used
with FFISELX.

LA

Inputs:

630

REF_1100

7.6 FFISEL/FFISELX

OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN6*

IN_6

Variable

Optional

--

Optional analog
input point. Used
with FFISELX.

LA

IN7*

IN_7

Variable

Optional

--

Optional analog
input point. Used
with FFISELX.

LA

IN8*

IN_8

Variable

Optional

--

Optional analog
input point. Used
with FFISELX.

LA

DIS1

DISABLE_1

Variable

Optional

--

Optional digital
input point
disables
corresponding
input:
0 = Use
1 = Disable

LD

DIS2

DISABLE_2

Variable

Optional

--

Optional digital
input point
disables
corresponding
input:
0 = Use
1 = Disable

LD

DIS3

DISABLE_3

Variable

Optional

--

Optional digital
input point
disables
corresponding
input:
0 = Use
1 = Disable

LD

DIS4

DISABLE_4

Variable

Optional

--

Optional digital
input point
disables
corresponding
input:
0 = Use
1 = Disable

LD

DIS5*

DISABLE_5

Variable

Optional

--

Optional digital
input point
disables
corresponding
input:
0 = Use
1 = Disable

LD

Used with
FFISELX.

REF_1100

631

7.6 FFISEL/FFISELX

OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIS6*

DISABLE_6

Variable

Optional

--

Optional digital
input point
disables
corresponding
input:
0 = Use
1 = Disable

LD

Used with
FFISELX.
DIS7*

DISABLE_7

Variable

Optional

--

Optional digital
input point
disables
corresponding
input:
0 = Use
1 = Disable

LD

Used with
FFISELX.
DIS8*

DISABLE_8

Variable

Optional

--

Optional digital
input point
disables
corresponding
input:
0 = Use
1 = Disable

LD

Used with
FFISELX.
OPSEL

OP_SELECT

Variable

Optional

--

Operator Select -optional input


used to force
selection of a
given input.
0 = Not forced

LA

OUT

OUT

Variable

Required

--

Required analog
output point.

LA

TOUT

--

Variable

Required

--

Mode and
tracking signals.

LA

DOUT*

OUT_D

Variable

Optional

--

Optional packed
output point
indicates alarm
condition.

LD

SEL

SELECTED

Variable

Optional

--

Optional analog
output indicates
which input is
selected.

LA

Outputs:

632

REF_1100

7.6 FFISEL/FFISELX

OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

STAT

--

Variable

Required

--

Required output
point. This point
contains the
status of the
Fieldbus function
block.

LP

AMODE

BLOCK_MODE_
ACTUAL

Y0 Variable

Optional

--

Actual mode of
the function
block. The modes
display in decimal
format:
0 = Invalid or
No mode
1 = Remote
Output (Rout)
2 = Remote
Cascade (Rcas)
3 = Cascade
(Cas)
4 = Automatic
(Auto)
5 = Manual
(Man)
6 = Local
Override (LO)
7 = Initialization
Manual (IMan)
8 = Out of
Service (O/S)

LA

NORM

MODE.NORMAL

X3 - Data
Init.

Required

Manual

Normal mode for


FFISEL. The
choices are:
Man
Auto

--

QUAL

--

X4 - Data
Init.

Required

BAD

If Fieldbus quality
is uncertain, set
the outputs to
one of the
following:
BAD
POOR
FAIR
GOOD

--

Params:

REF_1100

633

7.6 FFISEL/FFISELX

OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

FERR

--

X5 - Data
Init.

Required

BAD

If an error occurs
reading/writing
the Fieldbus
device, set the
outputs to one of
the following:
BAD
POOR
FAIR
GOOD

--

STYPE

SELECT_TYPE

B8 -Tuning
Constant

Required

First GOOD

Selec Type for


algorithm
operation:
Maximum
Minimum
Middle
Average
First GOOD

--

XTYPE

--

B9 - Data
Init.

Required

Not
Extended

Indicates whether
or not the
function block is
extended.

--

BERR

BLOCK_ERR

G0 - Alg.
Init.

--

--

Block error
storage

--

* Extended Input Selector variables (as used in certain Rosemount devices). Used if XTYPE = Extended.

634

REF_1100

7.7 FFMAI

7.7

FFMAI
Description
The FFMAI algorithm is used to interface to a Fieldbus Multiple Analog Input function block. The
FFMAI algorithm shadows up to eight measurement values and statuses from a fieldbus device to
Ovation output points.
The STAT point indicates status and error information of the function block. See the STAT bits
table (see page 614) for bit definitions.
The FFMAI algorithm supports Manual and Auto modes. These modes are tunable from both the
Ovation tuning graphic as well as the Fieldbus Module Engineering window in the Developer
Studio.
Note: The FFMAI algorithm also supports the FFMAI_RMT function block.
Fieldbus algorithm quality
All Fieldbus algorithms shadow the actual Fieldbus function block quality unless a communication
error occurs. In the case of a communication error, the output quality will be defined by the FERR
parameter. If the actual Fieldbus function block output quality is BAD or the FERR parameter is
set to BAD and a communication error occurs, the output quality will be marked as BAD and the
output value will latch at the last known GOOD quality value. The AMODE parameter will display
an unknown mode or no mode in this scenario.
Functional Symbol

Tracking Signals
The high and low limits flags and tracking signals from the algorithm are output to TOUT, and are
to be used for display and by an upstream algorithm. All Fieldbus function blocks support different
modes, which is also reflected in the TOUT point. The following information is TOUTs output
associated with the algorithm.
BIT

DESCRIPTION

TOUT SIGNAL

16

Track

TRUE when mode is Auto/Manual/Local.

17

Track if lower

Not used.

18

Track if higher

Not used.

19

Lower inhibit

Not used.

REF_1100

635

7.7 FFMAI

BIT

DESCRIPTION

TOUT SIGNAL

20

Raise inhibit

Not used.

21

Conditional Track

Not used.

22

Not used

Not used.

23

Deviation Alarm

Not used.

24

Local Manual mode

Local mode.

25

Manual mode

Manual mode.

26

Auto mode

Auto mode.

27

Supervisory mode

Not used.

28

Cascade mode

Not used.

29

DDC mode

Not used.

30

Low limit reached

Low limit reached.

31

High limit reached

High limit reached.

Algorithm Record Type = LC


Algorithm Definitions
OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

LU - Byte

Required

133

Tuning diagram.
number

MODE.
NORMAL

X3 - Byte

Required

Manual

Normal mode for


FFMAI. The
choices are:
MANUAL and
AUTO.

QUAL

X4 - Byte

Required

BAD

If Fieldbus quality
is uncertain, set
the output points
to one of the
following qualities:
BAD, GOOD,
FAIR, or POOR.

FERR

X5 - Byte

Required

BAD

If an error occurs
between
reading/writing to
the Fieldbus
device, then set
the output points
quality to: BAD,
GOOD, FAIR, or
POOR.

DIAG
NORM

636

MIN.
POINT
REC.

OUT1

OUT_1

Optional

Optional analog
output point.

LA

OUT2

OUT_2

Optional

Optional analog
output point.

LA

REF_1100

7.7 FFMAI

OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

OUT3

OUT_3

OUT4

OUT_4

OUT5

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Optional

Optional analog
output point.

LA

Optional

Optional analog
output point.

LA

OUT_5

Optional

Optional analog
output point.

LA

OUT6

OUT_6

Optional

Optional analog
output point.

LA

OUT7

OUT_7

Optional

Optional analog
output point.

LA

OUT8

OUT_8

Optional

Optional analog
output point.

LA

TOUT

Required

Mode and tracking


signals.

LA

STAT

Required

Required output
point. This point
contains status
(see page 614) of
the Fieldbus
algorithm.

LP

Optional

--

Actual mode of the


function block. The
modes display in
decimal format:
0 = Invalid or No
mode
1 = Remote
Output (Rout)
2 = Remote
Cascade (Rcas)
3 = Cascade
(Cas)
4 = Automatic
(Auto)
5 = Manual
(Man)
6 = Local
Override (LO)
7 = Initialization
Manual (IMan)
8 = Out of
Service (O/S)

LA

AMODE

REF_1100

BLOCK_MODE_
ACTUAL

Y0 Variable

637

7.8 FFMAO

7.8

FFMAO
Description
The FFMAO algorithm is used to interface to a Foundation Fieldbus Multiple Analog Output
function block. The FFMAO algorithm shadows up to eight measurement values and statuses
from Ovation analog process points to a Fieldbus device.
The STAT point indicates status and error information of the function block. See the STAT bits
table (see page 614) for bit definitions.
Fieldbus algorithm quality
All Fieldbus algorithms shadow the actual Fieldbus function block quality unless a communication
error occurs. In the case of a communication error, the output quality will be defined by the FERR
parameter. If the actual Fieldbus function block output quality is BAD or the FERR parameter is
set to BAD and a communication error occurs, the output quality will be marked as BAD and the
output value will latch at the last known GOOD quality value. The AMODE parameter will display
an unknown mode or no mode in this scenario.
Functional Symbol

Algorithm Record Type = LC


Algorithm Definitions
OV ATION
P AR AM

638

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DIAG

--

LU - Byte

Required

QUAL

--

X4 - Byte

Required

DEFAULT
VALUE

BAD

DESCRIPTION

MIN.
POINT
REC.

Tuning diagram
number.

--

If Fieldbus quality is
uncertain, set the
outputs to one of the
following: BAD, POOR,
FAIR, GOOD.

--

REF_1100

7.8 FFMAO

OV ATION
P AR AM

FIELDBUS
P AR AM

FERR

--

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

X5 - Byte

Required

BAD

If an error occurs
reading/writing the
Fieldbus device, set the
outputs to one of the
following: BAD, POOR,
FAIR, GOOD.

--

IN1

IN_1

--

Optional

--

Optional analog input


point.

LA

IN2

IN_2

--

Optional

--

Optional analog input


point.

LA

IN3

IN_3

--

Optional

--

Optional analog input


point.

LA

IN4

IN_4

--

Optional

--

Optional analog input


point.

LA

IN5

IN_5

--

Optional

--

Optional analog input


point.

LA

IN6

IN_6

--

Optional

--

Optional analog input


point.

LA

IN7

IN_7

--

Optional

--

Optional analog input


point.

LA

IN8

IN_8

--

Optional

--

Optional analog input


point.

LA

--

Required

--

Required output point.


This point contains the
status (see page 614)
of the Fieldbus function
block.

LP

Optional

--

Actual mode of the


function block. The
modes display in
decimal format:
0 = Invalid or No
mode
1 = Remote Output
(Rout)
2 = Remote Cascade
(Rcas)
3 = Cascade (Cas)
4 = Automatic (Auto)
5 = Manual (Man)
6 = Local Override
(LO)
7 = Initialization
Manual (IMan)
8 = Out of Service
(O/S)

LA

STAT

AMODE

REF_1100

--

BLOCK_
MODE_
ACTUAL

Y0 Variable

639

7.9 FFMDI

7.9

FFMDI
Description
The FFMDI algorithm is used to interface to a Foundation Fieldbus Multiple Digital Input function
block. The FFMDI algorithm shadows up to eight digital states and statuses from a Fieldbus
device to Ovation digital process points.
The STAT point indicates status and error information of the function block. See the STAT bits
table (see page 614) for bit definitions.
Fieldbus algorithm quality
All Fieldbus algorithms shadow the actual Fieldbus function block quality unless a communication
error occurs. In the case of a communication error, the output quality will be defined by the FERR
parameter. If the actual Fieldbus function block output quality is BAD or the FERR parameter is
set to BAD and a communication error occurs, the output quality will be marked as BAD and the
output value will latch at the last known GOOD quality value. The AMODE parameter will display
an unknown mode or no mode in this scenario.
Functional Symbol

640

REF_1100

7.9 FFMDI

Tracking Signals
The FFMDI function block, as an input, does not support back calculation or the Cas mode, and
so Ovation tracking is not supported. However the TOUT parameter is still used to indicate the
mode of the underlying function block.
BIT

DESCRIPTION

TOUT SIGNAL

16

Track

Not used.

17

Track if lower

Not used.

18

Track if higher

Not used.

19

Lower inhibit

Not used.

20

Raise inhibit

Not used.

21

Conditional Track

Not used.

22

Not used

Not used.

23

Deviation Alarm

Not used.

24

Local Manual mode

Local Override mode.

25

Manual mode

Manual mode.

26

Auto mode

Auto mode.

27

Supervisory mode

Not used.

28

Cascade mode

Not used.

29

DDC mode

Not used.

30

Low limit reached

Low limit reached.

31

High limit reached

High limit reached.

Algorithm Record Type = LC


Algorithm Definitions
OV ATION
P AR AM

TYPE

REQUIRED/
OPTIONAL

--

LU - Byte

Required

NORM

MODE.
NORMAL

X3 - Byte

Required

QUAL

--

X4 - Byte

Required

DIAG

REF_1100

FIELDBUS
P AR AM

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Tuning diagram number.

--

Manual

Normal mode for


FFMDI. The choices
are: MANUAL and
AUTO.

--

BAD

If Fieldbus quality is
uncertain, set the
outputs to one of the
following: BAD, POOR,
FAIR, GOOD.

--

641

7.9 FFMDI

OV ATION
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

FERR

--

X5 - Byte

Required

BAD

If an error occurs
reading/writing the
Fieldbus device, set the
outputs to one of the
following: BAD, POOR,
FAIR, GOOD.

--

TYPE

--

X9 - Byte

Required

Bit

Read input values as a


bit or octet. The choices
are:
Bit
Octet

--

OUT1

OUT_D1

--

Optional

--

Optional digital output


point.

LD

OUT2

OUT_D2

--

Optional

--

Optional digital output


point.

LD

OUT3

OUT_D3

--

Optional

--

Optional digital output


point.

LD

OUT4

OUT_D4

--

Optional

--

Optional digital output


point.

LD

OUT5

OUT_D5

--

Optional

--

Optional digital output


point.

LD

OUT_D6

--

Optional

--

Optional digital output


point.

LD

OUT7

OUT_D7

--

Optional

--

Optional digital output


point.

LD

OUT8

OUT_D8

--

Optional

--

Optional digital output


point.

LD

POUT1

OUT_D1

--

Optional

--

Optional packed digital


output point.

LP

POUT2

OUT_D2

--

Optional

--

Optional packed digital


output point.

LP

POUT3

OUT_D3

--

Optional

--

Optional packed digital


output point.

LP

POUT4

OUT_D4

--

Optional

--

Optional packed digital


output point.

LP

POUT5

OUT_D5

--

Optional

--

Optional packed digital


output point.

LP

POUT6

OUT_D6

--

Optional

--

Optional packed digital


output point.

LP

POUT7

OUT_D7

--

Optional

--

Optional packed digital


output point.

LP

POUT8

OUT_D8

--

Optional

--

Optional packed digital


output point.

LP

--

--

Required

--

Mode and tracking


signals.

LA

OUT6

TOUT

642

FIELDBUS
P AR AM

REF_1100

7.9 FFMDI

OV ATION
P AR AM
STAT

AMODE

REF_1100

FIELDBUS
P AR AM
--

BLOCK_
MODE_
ACTUAL

TYPE

--

Y0 Variable

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Required

--

Required output point.


This point contains the
status (see page 614) of
the Fieldbus function
block.

LP

Optional

--

Actual mode of the


function block. The
modes display in
decimal format:
0 = Invalid or No mode
1 = Remote Output
(Rout)
2 = Remote Cascade
(Rcas)
3 = Cascade (Cas)
4 = Automatic (Auto)
5 = Manual (Man)
6 = Local Override
(LO)
7 = Initialization
Manual (IMan)
8 = Out of Service
(O/S)

LA

643

7.10 FFMDO

7.10 FFMDO
Description
The FFMDO algorithm is used to interface to a Foundation Fieldbus Multiple Digital Output
function block. The FFMDO algorithm shadows up to eight digital states and statuses from
Ovation digital process points to a Fieldbus device.
The STAT point indicates status and error information of the function block. See the STAT bits
table (see page 614) for bit definitions.
Fieldbus algorithm quality
All Fieldbus algorithms shadow the actual Fieldbus function block quality unless a communication
error occurs. In the case of a communication error, the output quality will be defined by the FERR
parameter. If the actual Fieldbus function block output quality is BAD or the FERR parameter is
set to BAD and a communication error occurs, the output quality will be marked as BAD and the
output value will latch at the last known GOOD quality value. The AMODE parameter will display
an unknown mode or no mode in this scenario.
Functional Symbol

644

REF_1100

7.10 FFMDO

Tracking Signals
The FFMDO function block does not support back calculation or the Cas mode, and so Ovation
tracking is not supported. However the TOUT parameter is still used to indicate the mode of the
underlying function block.
BIT

DESCRIPTION

TOUT SIGNAL

16

Track

Not used.

17

Track if lower

Not used.

18

Track if higher

Not used.

19

Lower inhibit

Not used.

20

Raise inhibit

Not used.

21

Conditional Track

Not used.

22

Not used

Not used.

23

Deviation Alarm

Not used.

24

Local Manual mode

Local Override mode.

25

Manual mode

Not used.

26

Auto mode

Auto mode.

27

Supervisory mode

Not used.

28

Cascade mode

Not used.

29

DDC mode

Not used.

30

Low limit reached

Not used.

31

High limit reached

Not used.

Algorithm Record Type = LC


Algorithm Definitions
OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DIAG

--

LU - Byte

Required

QUAL

--

X4 - Byte

Required

FERR

--

X5 - Byte

Required

REF_1100

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Tuning diagram
number.

--

BAD

If Fieldbus quality is
uncertain, set the
outputs to one of the
following: BAD,
POOR, FAIR,
GOOD.

--

BAD

If an error occurs
reading/writing the
Fieldbus device, set
the outputs to one of
the following: BAD,
POOR, FAIR,
GOOD.

--

645

7.10 FFMDO

OV ATION
P AR AM
TYPE

646

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

Bit

Read input values as


a bit or octet. The
choices are:
Bit
Octet

--

--

X9 - Byte

Required

IN1

IN_D1

--

Optional

--

Optional digital input


point.

LD

IN2

IN_D2

--

Optional

--

Optional digital input


point.

LD

IN3

IN_D3

--

Optional

--

Optional digital input


point.

LD

IN4

IN_D4

--

Optional

--

Optional digital input


point.

LD

IN5

IN_D5

--

Optional

--

Optional digital input


point.

LD

IN6

IN_D6

--

Optional

--

Optional digital input


point.

LD

IN7

IN_D7

--

Optional

--

Optional digital input


point.

LD

IN8

IN_D8

--

Optional

--

Optional digital input


point.

LD

PIN1

IN_D1

--

Optional

--

Optional packed
digital input point.

LP

PIN2

IN_D2

--

Optional

--

Optional packed
digital input point.

LP

PIN3

IN_D3

--

Optional

--

Optional packed
digital input point.

LP

PIN4

IN_D4

--

Optional

--

Optional packed
digital input point.

LP

PIN5

IN_D5

--

Optional

--

Optional packed
digital input point.

LP

PIN6

IN_D6

--

Optional

--

Optional packed
digital input point.

LP

PIN7

IN_D7

--

Optional

--

Optional packed
digital input point.

LP

PIN8

IN_D8

--

Optional

--

Optional packed
digital input point.

LP

TOUT

--

--

Required

--

Mode and tracking


signals.

LA

STAT

--

--

Required

--

Required output
point. This point
contains the status
(see page 614) of
the Fieldbus function
block.

LP

REF_1100

7.10 FFMDO

OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

AMODE

BLOCK_
MODE_
ACTUAL

Y0 Variable

Optional

REF_1100

DEFAULT
VALUE
--

DESCRIPTION

Actual mode of the


function block. The
modes display in
decimal format:
0 = Invalid or No
mode
1 = Remote Output
(Rout)
2 = Remote
Cascade (Rcas)
3 = Cascade (Cas)
4 = Automatic
(Auto)
5 = Manual (Man)
6 = Local Override
(LO)
7 = Initialization
Manual (IMan)
8 = Out of Service
(O/S)

MIN.
POINT
REC.
LA

647

7.11 FFPID

7.11 FFPID
Description
The FFPID algorithm shadows the Fieldbus FFPID function block input and output values. It also
maps the Fieldbus back-calculation points to Ovation tracking points.
The STAT point indicates status and error information of the function block. See the STAT bits
table (see page 614) for bit definitions.
The FFPID algorithm supports Manual, Auto, and Cascade modes. These modes are tunable
from both the Ovation tuning graphic as well as the Fieldbus Module Engineering window in the
Developer Studio.
Fieldbus algorithm quality
All Fieldbus algorithms shadow the actual Fieldbus function block quality unless a communication
error occurs. In the case of a communication error, the output quality will be defined by the FERR
parameter. If the actual Fieldbus function block output quality is BAD or the FERR parameter is
set to BAD and a communication error occurs, the output quality will be marked as BAD and the
output value will latch at the last known GOOD quality value. The AMODE parameter will display
an unknown mode or no mode in this scenario.
Functional Symbol

Tracking Signals
External tracking and limiting are done through signals passed in the upper 16 bits of the third
status word of the analog track points. This algorithm takes the following action in response to
information found in the third status word of the analog input signal TRIN:

648

BIT

DESCRIPTION

TOUT SIGNAL

16

Track

Set TRUE when not in Cascade mode.

17

Track if lower

Not used.

18

Track if higher

Not used.

19

Lower inhibit

TRUE when output value is at the low limit.

20

Raise inhibit

TRUE when output value is at the high limit.

21

Conditional Track

Not used.

22

Not used

Not used.

23

Deviation Alarm

Not used.

REF_1100

7.11 FFPID

BIT

DESCRIPTION

TOUT SIGNAL

24

Local Manual mode

Local mode.

25

Manual mode

Manual mode.

26

Auto mode

Auto mode.

27

Supervisory mode

Not used.

28

Cascade mode

Cascade mode.

29

DDC mode

Not used.

30

Low limit reached

Low limit reached.

31

High limit reached

High limit reached.

The High and Low limit flags, the mode and the tracking signals from the algorithms are output to
TOUT to be used for display and by upstream algorithms.
Algorithm Record Type = LC
Algorithm Definitions
OV ATION
P AR AM

FIELDBUS
P AR AM

DIAG
NORM

MODE.
NORMAL

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

LU - Byte

Required

132

Tuning diagram
number.

X3 - Byte

Required

Manual

Normal mode for


function block. The
choices are: MANUAL,
AUTO and CASCADE.

QUAL

X4 - Byte

Required

BAD

If Fieldbus quality is
uncertain, set the output
points to one of the
following qualities: BAD,
GOOD, FAIR, OR
POOR.

FERR

X5 - Byte

Required

BAD

If an error occurs
between reading/writing
to the Fieldbus device,
then set the output
points quality to: BAD,
GOOD, FAIR, OR
POOR.

FGAIN

FF_GAIN

R1 - Real

Required

1.0

Feed forward gain.

GAIN

GAIN

R4 - Real

Required

1.0

Device gain.

TPSC

OUT_HI_LIM

R2 - Real

Required

100.0

Maximum output value.

BTSC

OUT_LO_LIM

R3 - Real

Required

0.0

Minimum output value.

DRAT

RATE

R6 - Real

Required

0.0

Derivative action.

INTG

RESET

R5 - Real

Required

10.0

Integral time.

REF_1100

649

7.11 FFPID

OV ATION
P AR AM

FIELDBUS
P AR AM

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

TPBS

SP_HI_LIM

R7 - Real

Required

100.0

Maximum setpoint
value.

BTBS

SP_LO_LIM

R8 - Real

Required

0.0

Minimum setpoint
value.

PV

IN

Required

Required analog input.

LA

CAS

CAS_IN

Optional

Optional analog input.

LA

TOUT

BKCAL_OUT

Required

Mode and tracking


signals.

LA

FF

FF_VAL

Optional

Optional analog input


for feed forward value.

LA

OUT

OUT

Required

Required analog input.

LA

TRIN

BKCAL_IN

Optional

Optional analog input


point. This is the track
input point.

LA

SP

SP

Optional

Optionl analog output


for set point.

LA

Required

Required output point.


This point contains the
status (see page 614)
of the Fieldbus function
block.

LP

Optional

--

Actual mode of the


function block. The
modes display in
decimal format:
0 = Invalid or No
mode
1 = Remote Output
(Rout)
2 = Remote Cascade
(Rcas)
3 = Cascade (Cas)
4 = Automatic (Auto)
5 = Manual (Man)
6 = Local Override
(LO)
7 = Initialization
Manual (IMan)
8 = Out of Service
(O/S)

LA

STAT

AMODE

650

BLOCK_
MODE_
ACTUAL

Y0 Variable

MIN.
POINT
REC.

REF_1100

E C T I O N

Understanding the Ovation SIS algorithms

IN THIS SECTION
Ovation SIS Logic Solver algorithm table ....................................................................... 652
LSAI................................................................................................................................. 655
LSALM............................................................................................................................. 657
LSAND ............................................................................................................................ 659
LSAVTR .......................................................................................................................... 661
LSBDE............................................................................................................................. 676
LSBFI .............................................................................................................................. 678
LSBFO............................................................................................................................. 681
LSCALC .......................................................................................................................... 683
LSCEM ............................................................................................................................ 697
LSCMP ............................................................................................................................ 723
LSDI ................................................................................................................................ 725
LSDO............................................................................................................................... 727
LSDVC ............................................................................................................................ 734
LSDVTR .......................................................................................................................... 746
LSLIM .............................................................................................................................. 761
LSMID ............................................................................................................................. 764
LSNAND.......................................................................................................................... 768
LSNDE ............................................................................................................................ 770
LSNOR ............................................................................................................................ 772
LSNOT ............................................................................................................................ 774
LSOFFD .......................................................................................................................... 775
LSOND ............................................................................................................................ 777
LSOR............................................................................................................................... 779
LSPDE............................................................................................................................. 781
LSRET............................................................................................................................. 783
LSRS ............................................................................................................................... 785
LSSEQ ............................................................................................................................ 787
LSSR ............................................................................................................................... 790
LSSTD............................................................................................................................. 792
LSTP ............................................................................................................................... 797
LSXNOR.......................................................................................................................... 799
LSXOR ............................................................................................................................ 800
SIS connector algorithm table ......................................................................................... 801
GSECPARAMREF .......................................................................................................... 802
NONSECPARAM ............................................................................................................ 803
SECPARAM ....................................................................................................................804
SECPARAMREF .............................................................................................................805

REF_1100

651

8.1 Ovation SIS Logic Solver algorithm table

8.1

Ovation SIS Logic Solver algorithm table


Algorithms from the SIS family are not valid in control macros or standard control functions.
ALGORITH

DESCRIPTION

FUNCTION

LSAI (see
page 655)

Analog Input

Accesses a single analog measurement value and status from an I/O


channel. The input value is a transmitter's 4 to 20 mA signal.

LSALM
(see page
657)

Alarm

Performs alarm detection on a user-specified input. The parameters


generated can then be used to generate alarm events at the user interface.

LSAND
(see page
659)

Logical AND

Generates a digital output value based on the logical AND of two to 16 digital
inputs. The algorithm supports signal status propagation.

LSAVTR
(see page
661)

Analog Voter

Monitors a number of input values and determines if there are enough votes
to trip. If a configured number of the inputs vote to trip, the algorithm trips and
sets the output of the algorithm to 0 (zero).

LSBDE
(see page
676)

Bi-Directional
Edge Trigger

Generates a True (1) digital pulse output when the digital input makes a
positive (False-to-True) or negative (True-to-False) transition since the last
execution of the algorithm. The algorithm supports signal status propagation.

LSBFI (see
page 678)

Boolean Fan In

Generates a digital output based on the weighted binary sum, binary coded
decimal (BCD) representation, or logical OR of one to 16 digital inputs. The
algorithm supports signal status propagation.

LSBFO
(see page
681)

Boolean Fan Out

Decodes a binary weighted input to individual bits and generates a digital


output value for each bit (as many as 16 outputs). The algorithm supports
signal status propagation.

LSCALC
(see page
683)

Calculation/Logic

Allows you to specify an expression that determines the algorithm's output.


Mathematical functions, logical operators, constants and parameter
references can be used in the expression.

LSCEM
(see page
697)

Cause Effect
Matrix (uses
advanced editor)

Defines interlock and permissive logic that associates as many as 16 inputs


and 16 outputs. Configure one or more inputs to trip each output. When an
input becomes active, all outputs associated with that input trip.

LSCMP
(see page
723)

Comparator

Compares two values and sets a Boolean output based on that comparison.

LSDI (see
page 725)

Digital Input

Accesses a single digital measurement value and status from a two-state field
device and makes the processed physical input available to other algorithms.
The algorithm supports signal inversion, signal filtering, signal status
propagation, and simulation.

LSDO (see
page 727)

Digital Output

Takes a digital input value representing the commanded output state and
writes it to a specified Digital Output channel. The algorithm supports fault
state detection and field device confirmation.

LSDVC
(see page
734)

Digital Valve
Controller

Drives a HART Two-state Output channel connected to a digital valve


controller. The algorithm supports partial stroke testing, fault state detection,
and field device confirmation.

LSDVTR
(see page
746)

Digital Voter

Monitors a number of input values and determines if there are enough votes
to trip. If a configured number of the inputs vote to trip, the algorithm trips and
sets the output of the algorithm to 0 (zero).

LSLIM (see
page 761)

Limit

Limits an input value between two reference values. The algorithm has
options that set the output to a default value or the last value if the input
becomes out of range.

652

REF_1100

8.1 Ovation SIS Logic Solver algorithm table

ALGORITH

DESCRIPTION

FUNCTION

LSMID (see
page 764)

Middle Signal
Selector

Selects between multiple analog signals. The algorithm selects the


mid-valued input from the inputs that are not disabled and do not have Bad
status. If there is an even number of inputs, the average of the two middle
valued inputs is used as the middle value.

LSNAND
(see page
768)

Logical NAND

Generates a digital output value based on the logical AND of two to 16 digital
inputs, then performs a NOT on the result. The algorithm supports signal
status propagation.

LSNDE
(see page
770)

Negative Edge
Trigger

Generates a True (1) digital pulse output when the digital input makes a
negative (True-to-False) transition since the last execution of the algorithm.
The algorithm supports signal status propagation.

LSNOR
(see page
772)

Logical NOR

Generates a digital output value based on the logical OR of two to 16 digital


inputs, then performs a NOT on the result. The algorithm supports signal
status propagation.

LSNOT
(see page
774)

Logical NOT

Logically inverts a digital input signal and generates a digital output value.
The algorithm supports signal status propagation.

LSOFFD
(see page
775)

Off-Delay Timer

Delays the transfer of a False (0) digital input value to the output by a
specified time period. The algorithm supports signal status propagation.

LSOND
(see page
777)

On-Delay Timer

Delays the transfer of a True (1) digital input value to the output by a specified
time period. The algorithm supports signal status propagation.

LSOR (see
page 779)

Logical OR

Generates a digital output value based on the logical OR of two to 16 digital


inputs. The algorithm supports signal status propagation.

LSPDE
(see page
781)

Positive Edge
Trigger

Generates a True (1) digital pulse output when the digital input makes a
positive (False-to-True) transition since the last execution of the algorithm.
The algorithm supports signal status propagation.

LSRET
(see page
783)

Retentive Timer

Generates a True (1) digital output after the input has been True for a
specified time period. The elapsed time the input has been True and the
output value are reset when the reset input is set True.

LSRS (see
page 785)

Reset/Set
Flip-Flop

Generates a digital output value based on NOR logic of reset and set inputs.

LSSEQ
(see page
787)

Sequencer (uses
advanced editor)

Associates system states with actions to drive outputs based on the current
state.

LSSR (see
page 790)

Set/Reset
Flip-Flop

Generates a digital output value based on NAND logic of set and reset inputs.

LSSTD
(see page
792)

State Transition
Diagram (uses
advanced editor)

Implements a user-defined state machine. The state machine describes the


possible states, and the transitions between those states, that can occur.

LSTP (see
page 797)

Timed Pulse

Generates a True (1) digital output for a specified time duration when the
input makes a positive (False-to-True) transition. The output remains True
even when the input returns to its initial digital value and returns to its original
False value only when the output is True longer than the specified time
duration.

LSXNOR
(see page
799)

Logical XNOR

Performs a NOT on the exclusive OR of two inputs.

REF_1100

653

8.1 Ovation SIS Logic Solver algorithm table

ALGORITH

DESCRIPTION

FUNCTION

Logical XOR

Performs an exclusive OR of two inputs to produce an output.

LSXOR
(see page
800)

8.1.1 Algorithm types


There are seven types of SIS logic algorithms:

654

Input/Output (I/O) algorithms Used to reference hardware points.

Math algorithms Perform mathematical functions for conversion, integration, and totaling.

Timer/Counter algorithms Perform timing and counting functions for control and
sequencing.

Logical algorithms Perform logic functions for sequencing, scheduling, and interlocking.

Analog Control algorithms Perform simple and complex algorithms for comprehensive
analog control.

Energy Metering algorithms Perform mathematical flow calculations for natural gasses,
steam, and other fluids.

Advanced Control algorithms Perform complex algorithms for advanced process control.

REF_1100

8.2 LSAI

8.2

LSAI
Description
The Logic Solver Analog Input (LSAI) algorithm accepts a single analog input signal from an input
channel and makes it available to other algorithms.
The LSAI algorithm provides an interface to analog input devices connected to Logic Solvers that
are on the same SIS Data Server. Some typical analog devices are differential pressure, flow,
temperature, and level transmitters.
Analog inputs can be from conventional or HART channels. This algorithm does not use digital
values from HART channels.
The LSAI algorithm does not have alarms.
Functional Symbol

Algorithm Execution
The LSAI algorithm accesses a single analog measurement value and status from an input
channel.
The LSAI algorithm supports signal scaling and signal status calculation.
The algorithm's output parameter (OUT) reflects the process variable (PV) value and status.
When you configure the LSAI algorithm, you select the input channel associated with an analog
measurement by configuring the Ovation point. You select the point and the parameter the LSAI
algorithm accesses on that channel. The channel specified can be one of the 16 channels on this
Logic Solver or an input channel on a Logic Solver on the same SIS Data Server.
The Ovation system cannot change the scaling in a HART device connected to a Logic Solver
channel. Such changes must be done using AMS Device Manager or a handheld configurator.
These changes do not propagate into the Ovation database.

REF_1100

655

8.2 LSAI
Status Handling
The SOP8 (Status Opt:Bad if Limited) parameter allows you to select options for status handling
and processing. The supported status options for the Analog Input algorithm are:

Bad if Limited

When this option is selected, the status of PV and OUT is Bad if the status of the referenced
channel is Hi Limited or Low Limited due to exceeding the overrange, underrange, NAMUR, or
sensor failure limits.
Algorithm Definitions

656

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OUT

R2 - Real

Variable

Required

Analog Output with Status

LA

PV

R3 - Real

Variable

Optional

Analog Output Value Only

LA

FVAL

R4 - Real

Variable

Optional

Hardware Channel Value

LA

BLERR

G0 - Integer

Variable

Optional

Block Error Status


256 - Input Failure/Bad PV
4096 - Simulate Active

LX

TPSC

S1 - Real

Data Init

Required

100

Output Scale: Top.


This parameter is copied
from the channel
configuration and can't be
changed in algorithm
configuration.

BTSC

S2 - Real

Data Init

Required

Output Scale: Bottom.


This parameter is copied
from the channel
configuration and can't be
changed in algorithm
configuration.

SOP8

YQ Integer
Bit 8

Data Init.

Required

Status Opt: Bad if Limited.


This parameter is copied
from the channel
configuration and can't be
changed in algorithm
configuration.
0 - No
1 - Yes

REF_1100

8.3 LSALM

8.3

LSALM
Description
The Logic Solver Alarm (LSALM) algorithm detects alarm conditions on an analog input you
specify. Use the algorithm to generate an alarm condition that can be referenced by an alarm in
the SIS module.
Functional Symbol

Algorithm Execution
Use the Alarm algorithm to detect alarm conditions for analog parameters from other algorithms.
You can choose the alarm detection type (High or Low) and the alarm limit. The algorithm
provides enable and delay parameters for the alarm you configure.
The following configurable parameters are available:

ADTYP - Indicates if the alarm detection type is High or Low.

ALM_ENAB - Enables and disables processing for the alarm condition. The default value is
Enabled (1).
When ALM_ENAB is 0 (alarm detection is disabled):
AACT is immediately forced to 0 (Inactive)
No alarm condition detection occurs.

ADLON - Delays the time it takes for AACT to be set to Active (1) after the alarm condition is
detected. If the alarm condition clears before the delay time is reached, the AACT parameter
remains Inactive (0) and the timer is reset. The timer resets every time the alarm condition
clears.

ADLOF - Delays the time it takes for AACT to be set to Inactive (0) after the alarm condition
clears. If the alarm condition reoccurs before the delay time is reached, the AACT parameter
remains Active (1) and the timer is reset. The timer resets every time the alarm condition is
detected.

AENDL - The time before alarm condition processing begins immediately after the alarm is
enabled (ALM_ENAB becomes True). The AACT parameter is forced to 0 for the time
specified. The timer resets whenever ALM_ENAB goes from Disabled (0) to Enabled (1).

AHYS - Used as a deadband when resetting alarm conditions for analog values.

REF_1100

657

8.3 LSALM
Status Handling
The algorithm does not support status. Alarm detection is performed regardless of the status of
the input.
Algorithm Definitions

658

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

R1 - Real

Variable

Required

Monitored Input

LA

AACT

X1 - Byte

Variable

Required

Alarm activation state. The


choices are:
0 - Inactive
1 - Active

LD

ATMR

R2 - Real

Variable

Required

Alarm Delay Timer

LA

ADTYP

X2 - Byte

Tunable

Required

Alarm Detection Type


0=Low
1=High

ALIM

R3 - Real

Tunable

Required

Alarm Condition Limit

AENCV

X3 - Byte
Bit 0

Tunable

Required

Enable Alarm: Activate


0=No
1=Yes

ADLOF

R4 - Real

Tunable

Required

Alarm Delay Off

ADLON

R5 - Real

Tunable

Required

Alarm Delay On

AENDL

R6 - Real

Tunable

Required

Alarm Enable Delay

AHYS

R7 - Real

Tunable

Required

0.5

Alarm Hysteresis

TPSC

R8 - Real

Tunable

Required

100

Input Scale: Top

BTSC

R9 - Real

Tunable

Required

Input Scale: Bottom

SCDML

X5 - Byte

Tunable

Required

Input Scale: Decimal


Place

REF_1100

8.4 LSAND

8.4

LSAND
Description
The Logic Solver AND (LSAND) algorithm generates a digital output value based on the logical
AND of two to 16 digital inputs. The algorithm supports signal status propagation.
IN1 through INx are the digital input values and statuses (as many as 16 inputs).
OUT is the digital output value and status.
Functional Symbol

Algorithm Execution
The number of inputs to the LSAND algorithm is an extensible parameter. The algorithm default is
two inputs. Use the Control Builder (see Ovation Control Builder User Guide) to add additional
input pins.
The LSAND algorithm examines the inputs you define and applies the logical AND function to the
inputs. When all inputs are True (1), the output is True. When one or more of the inputs is False
(0), the output is False.
Status Handling
The output status is set to the worst status among the selected inputs unless at least one input is
False and its status is not Bad. When this is the case, the output status is set to
GoodNonCascade.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

NOFIN

Y0 - Byte

IN1

IN2

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

Required

Number of Inputs
(automatically incremented
by system)

Variable

Required

Input 1

LD

Variable

Required

Input 2

LD

IN3

Variable

Optional

Input 3

LD

IN4

Variable

Optional

Input 4

LD

IN5

Variable

Optional

Input 5

LD

--

REF_1100

DESCRIPTION

MIN.
POINT
RECORD

659

8.4 LSAND

660

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN6

Variable

Optional

Input 6

LD

IN7

Variable

Optional

Input 7

LD

IN8

Variable

Optional

Input 8

LD

IN9

Variable

Optional

Input 9

LD

IN10

Variable

Optional

Input 10

LD

IN11

Variable

Optional

Input 11

LD

IN12

Variable

Optional

Input 12

LD

IN13

Variable

Optional

Input 13

LD

IN14

Variable

Optional

Input 14

LD

IN15

Variable

Optional

Input 15

LD

IN16

Variable

Optional

Input 16

LD

OUT

Variable

Required

Output

LD

REF_1100

8.5 LSAVTR

8.5

LSAVTR
Description
The Logic Solver Analog Voter (LSAVTR) algorithm provides an analog voter function for safety
instrumented functions. A voter algorithm monitors a number of input values and determines if
there are enough votes to trip. The LSAVTR algorithm monitors as many as 16 analog inputs. If a
configured number of the inputs vote to trip, the algorithm trips and sets the output of the
algorithm to 0 (zero).
For example, a process shutdown might be required if a tank exceeds a certain temperature.
Three temperature sensors are installed in the tank and an analog voter algorithm is configured to
monitor the sensors and trip if two of the three transmitters detect a high temperature.
Because the Logic Solver is a De-energize to Trip system, the normal operating value of the
output is 1 (On) and the tripped value is 0 (Off).
Functional Symbol

Algorithm Execution
The LSAVTR algorithm has one or more floating-point inputs with status and one digital output
with status. The algorithm compares each input to a common configured trip limit to determine
whether that input is a vote to trip the output (change it from the normal operating value to the
tripped value). The inputs are typically the engineering unit values from multiple field transmitters
measuring the same process value.
Basic Algorithm Operation
Voting in the Analog Voter algorithm is an M out of N function or "MooN". That is, M inputs of the
total N inputs must vote to trip. For example, the algorithm can be configured as a 2 out of 3 voter
(2oo3), where two of the three inputs must exceed the trip limit before the output is tripped. The
output of the algorithm is typically connected to an LSCEM (Cause and Effect Matrix) algorithm,
which interprets the value as either a safe or dangerous process state.
The LSAVTR algorithm has three inputs by default. The number of inputs is extensible from 1 to
16. The M value corresponds to the parameter N2TRP (Votes needed to trip, default value is 2).
Common voting schemes include 2 out of 3 (2oo3), 1 out of 2 (1oo2), and 2 out of 2 (2oo2). Other
features of the algorithm make it useful for single transmitter applications as a 1oo1 voter.
To determine whether an input is a vote to trip, the value is compared to the limit value (TRLIM Voted-to-Trip Limit Value). The configuration parameter DTYPE (Input Detection Type)
determines whether the comparison is Greater Than (high limit) or Less Than (low limit).

REF_1100

661

8.5 LSAVTR
In addition to trip limit detection, the algorithm also compares the inputs to a common PTLIM
(Pre-Trip Limit Value) and applies voting to determine a pre-tripped condition. Pre-trip voting is
typically used as a pre-alarm condition, but it is possible to expose the POUT parameter as an
algorithm output so that a single voter algorithm can initiate trip demand logic for two different trip
points.
A vote to trip must remain a vote to trip for a configured time (TRDLY - Trip Delay) before the
output changes to tripped. When the vote to trip clears, it must remain clear for NDLY (Output
Reset Delay) before the output changes to the normal state. The delays apply to both the OUT
and POUT (Output of Pre-Trip Vote) outputs. The default value for both delays is 0.0 seconds.
The TRSTS (Trip Status Indicator) and PSTAT (Pre-Trip/Startup Inhibit Status) parameters
indicate the state of the vote to trip.
For example, the possible values for TRSTS are:

Normal - the conditions for tripping are not fulfilled.

Tripped -- the conditions for tripping are fulfilled.

Voted to Trip, Delayed -- transition of TRSTS can be delayed when this parameter is a
non-zero number and a transition is occurring between the tripped state.

Voted Normal, Delayed -- transition of TRSTS can be delayed when this parameter is a
non-zero number and a transition is occurring between the normal state.

Trip Inhibited (when applicable) -- occurs whenever a startup bypass is active or when it is
not possible to trip because there are not enough inputs participating in voting. The latter case
can occur when inputs are bypassed or when inputs have bad status and the selected
STATUS_OPT option is Trip inhibited.

Startup and Maintenance Bypass Options


It is often necessary to force a voter algorithm's output to remain at the Normal value during plant
startup to prevent a trip caused by inputs that have not stabilized at their normal operating values.
You may also want to bypass inputs to allow for sensor maintenance. By default, you can bypass
only one input of the algorithm at a time. The bypassed input cannot vote to trip.
The following sections explain how to use the BOPx options to implement startup and
maintenance bypasses.
Bypassing Inputs
If you have voter algorithms with 1 out of 2 (1oo2)) or 1 out of 1 (1oo1) voting schemes you may
want the ability to bypass inputs to allow for maintenance. Voters that require multiple votes to trip
can benefit from bypass functions as well, resulting in more predictable behavior during
transmitter maintenance. Default algorithm behavior requires that BPERM (Permit Input Bypass)
be true to bypass inputs. You can configure BPERM to be set by a display button or physical
switch (digital input to the SIS module).
If your application does not require permission before inputs can be bypassed, you can select the
BOPTx option "Bypass Opt: PermitNotReq" (Bypass permit is not required to bypass).

662

REF_1100

8.5 LSAVTR

Reducing the Number to Trip


By default, an algorithm configured as an M out of N voter becomes an M out of (N-1) algorithm (a
2 out of 3 voter becomes a 2 out of 2 voter) when an input is bypassed because the bypassed
input cannot vote to trip. Selecting the BOPTx option "Bypass Opt: MaintBypRed" (A maintenance
bypass reduces the number to trip) causes an M out of N voter to become an (M-1) out of (N-1)
voter (reduces the number required to trip by one when an input is bypassed).
The following table shows the effect the BOPTx option "Bypass Opt: MaintBypRed" has on the
actual number to trip (ANTRP) for several voting schemes. Note that in no case is ANTRP less
than one.
BOPTx effect on ANTRP
CONFIGURED
VOTING SCHEME

BOPTX OPTION - A
TRIP.

M AINTENANCE BYPASS REDUCES THE NUMBER TO

THE OPTION IS NOT SELECTED.


(USES CONFIGURED N2TRP)

THE OPTION IS SELECTED.


( R E D U C E S AN T R P )

2 out of 3

2 out of 2

1 out of 2

2 out of 2

Trip Inhibited

1 out of 1

1 out of 2

1 out of 1

1 out of 1

1 out of 1

Trip Inhibited

Trip Inhibited

2 out of 4

2 out of 3

1 out of 3

6 out of 8

6 out of 7

5 out of 7

Allowing Multiple Bypasses


If your application requires, you can enable bypassing multiple inputs simultaneously by selecting
the BOPTx option "Bypass Opt: MulBypAllowed" (Multiple maintenance bypasses are allowed).
If multiple bypasses are set, deselecting the BOPTx option "Bypass Opt: MulBypAllowed"
prevents further bypasses being set but existing bypasses remain set. Additional bypasses
cannot be set until all existing bypasses are cleared.
Maintenance Bypass Timeout
You can configure a maintenance bypass to be active for a finite time using BTOUT (Input Bypass
Reset Timeout). Its default value is 0.0 seconds, which means no timeout is applied (maintenance
bypasses remain active until BYPx (Voting Bypass for Input x) parameters become False, either
by changing True BYPx parameters to False or changing BPERM to False).
When BTOUT is non-zero, BTMR (Bypass Countdown Timer) is preset to BTOUT seconds when
the first BYPx parameter becomes True (not when BPERM becomes True). Each module scan
thereafter BTMR is decremented until it times out (unless all BYPx parameters become False, in
which case the algorithm resets BTMR to 0.0).

REF_1100

663

8.5 LSAVTR
BTMR is common to all inputs. The value of BTMR does not change when a second BYPx
parameter is changed to True (if multiple bypasses are allowed). When BTMR times out, the
algorithm default behavior changes all True BYPx parameters to False. If you use bypass
timeouts, do not expose BYPx parameters as algorithm inputs and connect to them. Doing so will
prevent the algorithm from removing bypasses upon timeout. If you need to manipulate BYPx
parameters from SIS module logic, use an LSCALC algorithm to conditionally assign them.
Optionally, you can use the bypass timer for indication only by selecting the BOPx option
"Maintenance bypass timeout is for indication only." This causes the timeout of BTMR to activate
a notification alarm (AALRT Expiration Reminder), but does not undo bypasses.
Bypass Timeout Reminder
You can configure the algorithm to remind operators that a bypass timeout is imminent. By
default, the algorithm does not notify. There are two ways you can cause a notification:

For bypasses with a configured timeout, you can cause notification in advance of the timeout
by setting RMTIM (Reminder Alarm Duration) to a non-zero value. When BTMR is non-zero
but less than or equal to RMTIM, the alarm condition (AALRT Expiration Reminder) is active.
The bypass timer is re-armed only after the first bypass. However, BTMR is a writeable
parameter. After notification that a timeout is about to happen, BTMR can be incremented
using a display button or some other suitable technique to extend the time.

A second approach is available when you are using the bypass timeout for indication only,
that is, bypasses are not removed when BTMR expires (the BOPx option "Maintenance
bypass timeout is for indication only" is selected). In this case the reminder alarm condition
becomes active when BTMR times out even if RMTIM is 0.0. If RMTIM is non-zero, the
reminder occurs prior to timeout. If BTMR times out, the reminder is active and remains active
until all bypasses have been removed.

The following table describes the behavior of the bypass timeout and reminder function for three
different configuration setups.
Bypass timeout behavior
CONDITION

BTOUT

AND

BOPX CONFIGURATION

BTOUT = 0.0
(NO TIMEOUT)

BTOUT > 0.0 AND


BOPX OPTION
"M AINTEN AN CE BYP ASS
TIMEOUT IS FOR
INDICATION ONLY" IS
NOT SELECTED
(BYPX REMOVED ON
TIMEOUT)

664

BTOUT > 0.0 AND BOPX


OPTION "M AINTENANCE
BYP ASS TIMEOUT IS FOR
INDICATION ONLY" IS
SELECTED
(TIMEOUT FOR INDICATION
ONLY)

BPERM changes to
True.

BTMR stays 0.0

BTMR stays 0.0

BTMR stays 0.0

First input is bypassed


(BYPx changes to True)

BTMR stays 0.0

BTMR = BTOUT seconds


and begins timing down.

BTMR = BTOUT seconds and


begins timing down.

Second input is
bypassed (assuming the
BOPx option "Multiple
maintenance bypasses
are allowed" is
selected).

BTMR stays 0.0

BTMR continues timing


down.

BTMR continues timing down.

REF_1100

8.5 LSAVTR

CONDITION

BTOUT

AND

BOPX CONFIGURATION

BTOUT = 0.0
(NO TIMEOUT)

BTOUT > 0.0 AND


BOPX OPTION
"M AINTEN AN CE BYP ASS
TIMEOUT IS FOR
INDICATION ONLY" IS
NOT SELECTED
(BYPX REMOVED ON
TIMEOUT)

BTOUT > 0.0 AND BOPX


OPTION "M AINTENANCE
BYP ASS TIMEOUT IS FOR
INDICATION ONLY" IS
SELECTED
(TIMEOUT FOR INDICATION
ONLY)

BTMR > RMTIM

N/A

No reminder

No reminder

BTMR <= RMTIM

No reminder

Reminder alarm condition is


active.

Reminder alarm condition is


active.

Bypass timer times out

N/A

The algorithm changes all


BYPx parameters to False.
Reminder alarm condition
clears on the following
scan.

Reminder alarm condition


remains active until all
bypasses are removed
manually.

Startup Bypass Trip Inhibit


It is often necessary to force a voter algorithm's output to remain at the Normal value during plant
startup to prevent a trip caused by inputs that have not stabilized at their normal operating values.
This startup bypass allows the process to reach normal operating conditions without tripping. Use
the STUP (Inhibit Startup Trip Detection) parameter and associated parameters for startup
bypasses. Do not use maintenance overrides for this purpose.
Timed Startup Bypass (the BOPx option Startup bypass duration is event-based is not
selected)
On a rising edge of the STUP parameter the algorithm forces OUT and POUT to the normal state
value for a configurable length of time defined by SUTM (Startup Inhibit Duration). When the
countdown timer SUTMR (Startup Inhibit Timer) times out, the algorithm resumes normal trip
detection. The default behavior of the algorithm is such that a subsequent rising edge of STUP
does not affect the startup time while SUTMR is timing down. To avoid a pending trip on timeout,
you can allow each rising edge of STUP to re-arm SUTMR (by selecting the BOPx option "Startup
bypass preset is allowed while active").
A reminder becomes available to STUP bypasses by selecting the BOPx option "Reminder
applies to startup bypass." When SUTMR is greater than 0.0 but less than RMTIM, the reminder
alarm condition (AALRT Expiration Reminder) is active. The reminder alarm condition is common
to the timeout of maintenance and startup bypasses.
Another option is to have the startup timer expire when inputs have stabilized, that is, when there
have not been enough votes to trip for a configurable period of time. When the BOPx option
"Startup bypass expires upon stabilization" is selected, the bypass timer expires when the
process stabilizes. While SUTMR is timing down, STMR times out whenever there are not enough
votes to trip and resets whenever the trip votes equal or exceed the number required to trip.
If STMR reaches the configured STM, SUTMR resets to 0.0 and normal trip detection resumes.
While SUTMR is timing down, the algorithm increments T2STB (Time to Stable) and stops as
soon as the STMR is triggered. T2STB (Time to Stable) indicates the total number of seconds
during the startup bypass until the inputs become and remain stable (assuming SUTM is
sufficiently long).

REF_1100

665

8.5 LSAVTR
STMR does not reset at the end of the startup time period, but is reset at the beginning of a
startup and at any time during the startup when there are enough trip votes. T2STB is reset at the
beginning of a startup bypass. STMR and T2STB are processed even when the stabilization
option is not used (the BOPx option "Startup bypass expires upon stabilization" is not selected).
You can use the value of T2STB to optimize the configured SUTM.
Event-Based Startup Bypass (the BOPx option Startup bypass duration is event-based is
selected)
When the startup bypass expires based on an event rather than a fixed time period, select the
BOPx option "Startup bypass duration is event based." This ends the startup bypass when the
parameter STUP becomes False. STMR and T2STB are not processed. They are set to 0.0 when
STUP becomes True.
Bypass Permit Control
You can use the BOPx option "Bypass permit control should be visible in operator interface" to
control the visibility of a button on a graphic representing this algorithm. Operators can use this
button to set the BPERM parameter. Do not select this option if logic in the SIS module is writing
to BPERM (for example, a keyswitch is used to permit bypassing).
The following table summarizes the BOPx options and their effects.
BOPx parameter options

666

OPTION

BEHAVIOR WHEN OPTION


SET TO 1 (TRUE)

A maintenance bypass
reduces the number to trip.
(BOP1 - MaintBypRed)

An M out of N voter becomes an


(M-1) out of (N-1) voter (number
required to trip by is reduced by
one) when an input is bypassed.

An M out of N voter becomes an M


out of (N-1) voter when an input is
bypassed.

Multiple maintenance
bypasses are allowed.
(BOP2 - MulBypAllowed)

You can bypass multiple inputs at


the same time.

Only one input can be bypassed at a


time.

Maintenance bypass
timeout is for indication
only.
(BOP3 - IndicateOnly)

When BTMR times out AALRT


Bypass Active remains set and
input bypasses remain in effect.

When BTMR times out, AALRT


Bypass Active clears and all
bypasses are cleared.

Startup bypass preset is


allowed while active.
(BOP4 - ReArmAllowed)

Each time STUP is set to True,


SUTMR is reset to the configured
value of SUTM.

SUTMR is not reset.

Startup bypass expires


upon stabilization.
(BOP5 - BypExpires)

Startup bypass and SUTMR clear


if STMR reaches STM (after there
are not enough votes to trip for the
configured amount of time).

Startup bypass ends when SUTMR


reaches 0 (zero).

Reminder applies to startup


bypass.
(BOP6 - ReminderApplies)

When SUTMR is greater than 0.0


but less than RMTIM, the AALRT
Expiration Reminder is set. The
reminder alarm condition is
common to maintenance and
startup bypass timeouts.

AALRT Expiration Reminder does not


apply to startup bypass.

IS

BEHAVIOR WHEN OPTION


TO 0 (F ALSE)

IS SET

REF_1100

8.5 LSAVTR

OPTION

BEHAVIOR WHEN OPTION


SET TO 1 (TRUE)

BEHAVIOR WHEN OPTION


TO 0 (F ALSE)

Startup bypass duration is


event-based.
(BOP7 - BypDurEvent)

Startup bypass expires only when


STUP becomes False. STMR and
T2STB are not processed.

Startup bypass is time based.

Bypass permit is not


required to bypass.
(BOP8 - PermitNotReq)

BPERM does not need to be set to


True for inputs to be bypassed.

BPERM must be set to True for inputs


to be bypassed.

Bypass permit control


should be visible in
operator interface. (BOP9 BypPerVisible)

Bypass permit controls appear in


the standard LSAVTR faceplate.
Do not select this option if SIS
module logic writes to BPERM (for
example, bypass permitting is
done using a keyswitch).

Bypass permit controls do not appear


in the standard LSAVTR faceplate.

IS

IS SET

Status Handling
The status of the inputs influences algorithm behavior based on how the SOPT (Status Options if
Bad input) parameter is configured. The three choices of SOPT are:

Always Use Value The value of the input is always used regardless of status. In this way a
hardware failure does not necessarily cause a shutdown and time is allowed for repair.
Detected hardware failures are indicated by standard alarms on the Logic Solver card. This is
the default option.

Will Not Vote if Bad The input value is not counted as a vote to trip if its status is Bad.

Vote to Trip if Bad The input value is counted as a vote to trip if the input status is Bad.

The following table shows how several common voting schemes degrade when a single input has
bad status based on the option chosen for SOPT.
Example of voting scheme degradation
ORIGINAL VOTING
SCHEME

RESULTING VOTING SCHEME


ALW AYS USE V ALUE

FOR

SOPT V ALUES

WILL NOT VOTE

IF

B AD

VOTE
BAD

TO

2 out of 3

2 out of 3 or 1 out of 2

2 out of 2

1 out of 2

2 out of 2

2 out of 2 or 1 out of 1

Will Not Vote if Bad

1 out of 1

1 out of 2

1 out of 2 or Tripped

1 out of 1

Tripped

1 out of 1

1 out of 1 or Tripped

Trip Inhibited

Tripped

TRIP

IF

1. The degraded voting scheme depends on the value of the input with Bad status.

REF_1100

667

8.5 LSAVTR
The LSAVTR algorithm determines the status of OUT and POUT in the same way no matter
which status option is chosen. The status calculation is completely separate from the value
calculation.
The status of OUT and POUT is Good if the number of non-bypassed inputs with Good status is
greater than or equal to ANTRP (Actual Votes Needed to Trip), or all inputs are bypassed;
otherwise, the status is Bad. Uncertain status on inputs is treated as Good.
When any input has Bad status, the AALRT Input Bad becomes active.
TRSTS and PSTAT Indication
The TRSTS parameter indicates the state of the trip vote functions. The typical value for TRSTS
is Normal, and less commonly, Tripped. As shown in the following figure, TRSTS can be delayed
when TRDLY or NDLY is non-zero and a transition is occurring between normal and tripped
states.
A fifth state, Trip Inhibited, occurs whenever a startup bypass is active or when it is not possible to
trip because there are not enough inputs participating in voting. The latter case can occur when
inputs are bypassed or when inputs have bad status and the selected SOPT option is Trip
inhibited.
The solid lines in the figure show the common state transitions of TRSTS expected as the
process value moves above and below the trip point. The dashed lines show less common state
transitions.

Figure 5: State diagram for TRSTS

668

REF_1100

8.5 LSAVTR
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

AUX1

G3 - SID

Data Init.

Required

Auxiliary record 1

LC

NOFIN

Y0 - Byte

--

Required

Number of Inputs
(automatically incremented
by system).

IN1

R1 - Real

Variable

Required

Input 1

LD

IN2

R2 - Real

Variable

Optional

Input 2

LD

IN3

R3 - Real

Variable

Optional

Input 3

LD

IN4

R4 - Real

Variable

Optional

Input 4

LD

IN5

R5 - Real

Variable

Optional

Input 5

LD

IN6

R6 - Real

Variable

Optional

Input 6

LD

IN7

R7 - Real

Variable

Optional

Input 7

LD

IN8

R8 - Real

Variable

Optional

Input 8

LD

IN9

R9 - Real

Variable

Optional

Input 9

LD

IN10

S1 - Real

Variable

Optional

Input 10

LD

IN11

S2 - Real

Variable

Optional

Input 11

LD

IN12

S3 - Real

Variable

Optional

Input 12

LD

IN13

S4 - Real

Variable

Optional

Input 13

LD

IN14

S5 - Real

Variable

Optional

Input 14

LD

IN15

S6 - Real

Variable

Optional

Input 15

LD

IN16

S7 - Real

Variable

Optional

Input 16

LD

OUT

X1 - Byte

Variable

Required

Output

LD

PVN1

G4 - Integer
Bit 0

Variable

Optional

Pre-Trip Check Status Input


1

LD

PVN2

G4 - Integer
Bit 1

Variable

Optional

Pre-Trip Check Status Input


2

LD

PVN3

G4 - Integer
Bit 2

Variable

Optional

Pre-Trip Check Status Input


3

LD

PVN4

G4 - Integer
Bit 3

Variable

Optional

Pre-Trip Check Status Input


4

LD

PVN5

G4 - Integer
Bit 4

Variable

Optional

Pre-Trip Check Status Input


5

LD

PVN6

G4 - Integer
Bit 5

Variable

Optional

Pre-Trip Check Status Input


6

LD

PVN7

G4 - Integer
Bit 6

Variable

Optional

Pre-Trip Check Status Input


7

LD

PVN8

G4 - Integer
Bit 7

Variable

Optional

Pre-Trip Check Status Input


8

LD

REF_1100

669

8.5 LSAVTR

670

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

AUX1

G3 - SID

Data Init.

Required

Auxiliary record 1

LC

PVN9

G4 - Integer
Bit 8

Variable

Optional

Pre-Trip Check Status Input


9

LD

PVN10

G4 - Integer
Bit 9

Variable

Optional

Pre-Trip Check Status Input


10

LD

PVN11

G4 - Integer
Bit 10

Variable

Optional

Pre-Trip Check Status Input


11

LD

PVN12

G4 - Integer
Bit 11

Variable

Optional

Pre-Trip Check Status Input


12

LD

PVN13

G4 - Integer
Bit 12

Variable

Optional

Pre-Trip Check Status Input


13

LD

PVN14

G4 - Integer
Bit 13

Variable

Optional

Pre-Trip Check Status Input


14

LD

PVN15

G4 - Integer
Bit 14

Variable

Optional

Pre-Trip Check Status Input


15

LD

PVN16

G4 - Integer
Bit 15

Variable

Optional

Pre-Trip Check Status Input


16

LD

PVOT

X6 - Byte

Variable

Optional

Num of Inputs Voted to


Pre-Trip

LA

PDTMR

AUX1:R1 Real

Variable

Optional

Countdown Timer for


Pre-Delay

LA

POUT

X7 - Byte

Variable

Optional

Output of Pre-Trip Vote

LD

PSTAT

X8 - Byte

Variable

Optional

Pre-Trip/Startup Inhibit
Status

LA

TVN1

G5 - Integer
Bit 0

Variable

Optional

Voted-to-Trip Status Input 1

LD

TVN2

G5 - Integer
Bit 1

Variable

Optional

Voted-to-Trip Status Input 2

LD

TVN3

G5 - Integer
Bit 2

Variable

Optional

Voted-to-Trip Status Input 3

LD

TVN4

G5 - Integer
Bit 3

Variable

Optional

Voted-to-Trip Status Input 4

LD

TVN5

G5 - Integer
Bit 4

Variable

Optional

Voted-to-Trip Status Input 5

LD

TVN6

G5 - Integer
Bit 5

Variable

Optional

Voted-to-Trip Status Input 6

LD

TVN7

G5 - Integer
Bit 6

Variable

Optional

Voted-to-Trip Status Input 7

LD

TVN8

G5 - Integer
Bit 7

Variable

Optional

Voted-to-Trip Status Input 8

LD

TVN9

G5 - Integer
Bit 8

Variable

Optional

Voted-to-Trip Status Input 9

LD

REF_1100

8.5 LSAVTR

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

AUX1

G3 - SID

Data Init.

Required

Auxiliary record 1

LC

TVN10

G5 - Integer
Bit 9

Variable

Optional

Voted-to-Trip Status Input 10

LD

TVN11

G5 - Integer
Bit 10

Variable

Optional

Voted-to-Trip Status Input 11

LD

TVN12

G5 - Integer
Bit 11

Variable

Optional

Voted-to-Trip Status Input 12

LD

TVN13

G5 - Integer
Bit 12

Variable

Optional

Voted-to-Trip Status Input 13

LD

TVN14

G5 - Integer
Bit 13

Variable

Optional

Voted-to-Trip Status Input 14

LD

TVN15

G5 - Integer
Bit 14

Variable

Optional

Voted-to-Trip Status Input 15

LD

TVN16

G5 - Integer
Bit 15

Variable

Optional

Voted-to-Trip Status Input 16

LD

TRPVT

X9 - Byte

Variable

Optional

Num of Inputs Voted-to-Trip

LA

TRSTS

Y2 - Byte

Variable

Optional

Trip Status Indicator. The


choices are:
0 = Normal
1 = Tripped
2 = Trip inhibited
3 = Voted to Trip, Delayed
Voted Normal, Delayed

LA

See explanation given above.


T2STB

AUX1:R2 Real

Variable

Optional

Time to Stable in seconds.

LA

SUTMR

AUX1:R3 Real

Variable

Optional

Startup Inhibit Timer in


seconds.

LA

STMR

AUX:R4 Real

Variable

Optional

Startup No-Vote-to-Trip
Timer in seconds.

LA

OUTNB

Y4 - Byte

Variable

Optional

Output with No Bypass

LD

DLYTM

AUX1:R5 Real

Variable

Optional

Countdown Timer for Delay


in seconds.

LA

BTMRH

AUX1:R6 Real

Variable

Optional

Bypass Countdown Timer


(hrs)

LA

AALRT

G6 - Integer

Variable

Optional

Alarms Conditions Set by


algorithm

LX

ANTRP

Y3 - Byte

Variable

Optional

Actual Votes Needed to Trip

LA

BYP1

C0 - Integer

Selectable

Optional

Voting Bypass for Input 1


0=No, 1=Yes

BYP2

C1 - Integer

Selectable

Optional

Voting Bypass for Input 2


0=No, 1=Yes

REF_1100

671

8.5 LSAVTR

672

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

AUX1

G3 - SID

Data Init.

Required

Auxiliary record 1

LC

BYP3

C2 - Integer

Selectable

Optional

Voting Bypass for Input 3


0=No, 1=Yes

BYP4

C3 - Integer

Selectable

Optional

Voting Bypass for Input 4


0=No, 1=Yes

BYP5

C4 - Integer

Selectable

Optional

Voting Bypass for Input 5


0=No, 1=Yes

BYP6

C5 - Integer

Selectable

Optional

Voting Bypass for Input 6


0=No, 1=Yes

BYP7

C6 - Integer

Selectable

Optional

Voting Bypass for Input 7


0=No, 1=Yes

BYP8

C7 - Integer

Selectable

Optional

Voting Bypass for Input 8


0=No, 1=Yes

BYP9

C8 - Integer

Selectable

Optional

Voting Bypass for Input 9


0=No, 1=Yes

BYP10

YT - Integer

Selectable

Optional

Voting Bypass for Input 10


0=No, 1=Yes

BYP11

D0 - Integer

Selectable

Optional

Voting Bypass for Input 11


0=No, 1=Yes

BYP12

YQ - Integer

Selectable

Optional

Voting Bypass for Input 12


0=No, 1=Yes

BYP13

D2 - Integer

Selectable

Optional

Voting Bypass for Input 13


0=No, 1=Yes

BYP14

YP - Integer

Selectable

Optional

Voting Bypass for Input 14


0=No, 1=Yes

BYP15

D4 - Integer

Selectable

Optional

Voting Bypass for Input 15


0=No, 1=Yes

BYP16

D5 - Integer

Selectable

Optional

Voting Bypass for Input 16


0=No, 1=Yes

BOP1

G0 - Integer
Bit 0

Tunable

Required

Bypass Opt: MaintBypRed


0=False, 1=True

BOP2

G0 - Integer
Bit 1

Tunable

Required

Bypass Opt: MulBypAllowed


0=False, 1=True

BOP3

G0 - Integer
Bit 2

Tunable

Required

Bypass Opt: IndicateOnly


0=False, 1=True

BOP4

G0 - Integer
Bit 3

Tunable

Required

Bypass Opt: ReArmAllowed


0=False, 1=True

BOP5

G0 - Integer
Bit 4

Tunable

Required

Bypass Opt: BypExpires


0=False
1=True

BOP6

G0 - Integer
Bit 5

Tunable

Required

Bypass Opt:
ReminderApplies
0=False, 1=True

REF_1100

8.5 LSAVTR

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

AUX1

G3 - SID

Data Init.

Required

Auxiliary record 1

LC

BOP7

G0 - Integer
Bit 6

Tunable

Required

Bypass Opt: BypDurEvent


0=False, 1=True

BOP8

G0 - Integer
Bit 7

Tunable

Required

Bypass Opt: PermitNotReq


0=False, 1=True

BOP9

G0 - Integer
Bit 8

Tunable

Required

Bypass Opt: BypPerVisible


0=False, 1=True

BPERM

X2 - Byte

Tunable

Required

Permit Input Bypass


0=No, 1=Yes

BTOUT

S8 - Real

Tunable

Required

0.0

Input Bypass Reset Timeout


(sec)

BTMR

S9 - Real

Alg Init

Required

0.0

Bypass Countdown Timer


(sec)

DTYPE

X3 - Byte

Tunable

Required

Input Detection Type


1=GreaterThan 2=LessThan

DVHYS

T1 - Real

Tunable

Required

Input Range Limit Deadband

DVLIM

T2 - Real

Tunable

Required

Input Value Range Limit

TPSC

T3 - Real

Tunable

Required

100

Input Scale: Top

BTSC

T4 - Real

Tunable

Required

0.0

Input Scale: Bottom

SCDML

Y5 - Byte

Tunable

Required

Input Scale: Decimal Places

NDLY

T5 - Real

Tunable

Required

Output Reset Delay (sec)

N2TRP

X4 - Byte

Tunable

Required

Votes Needed to Trip

PTLIM

T6 - Real

Tunable

Required

80

Pre-Trip Limit Value

RMTIM

T7 - Real

Tunable

Required

Reminder Alarm Duration


(sec)

ROP1

G1 - Integer
Bit 0

Tunable

Required

Report Opt: NoRollUp


0=False
1=True

ROP2

G1 - Integer
Bit 1

Tunable

Required

Report Opt: NoEventRecords


0=False
1=True

STM

T8 - Real

Tunable

Required

Process Stabilization Time


(sec)

STUP

X5 - Byte

Tunable

Required

Inhibit Startup Trip Detection


0=No
1=Yes

SUTM

T9 - Real

Tunable

Required

Startup Inhibit Duration (sec)

SOPT

G2 - Integer

Tunable

Required

Status Options if Bad Input


0=Always Use Value
1=Will Not Vote if Bad
2=Vote to Trip if Bad

TRDLY

U1 - Real

Tunable

Required

Trip Delay (sec)

REF_1100

673

8.5 LSAVTR

674

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

AUX1

G3 - SID

Data Init.

Required

Auxiliary record 1

LC

TRHYS

U2 - Real

Tunable

Required

0.5

Trip Limit Deadband

TRLIM

U3 - Real

Tunable

Required

90

Voted-to-Trip Limit Value

DI1

Data Init.

Optional

VOTER1

Description of Voter 1.
For Control Builder/Signal
Diagram application use only.

DI2

Data Init.

Optional

VOTER2

Description of Voter 2.
For Control Builder/Signal
Diagram application use only.

DI3

Data Init.

Optional

VOTER3

Description of Voter 3.
For Control Builder/Signal
Diagram application use only.

DI4

Data Init.

Optional

VOTER4

Description of Voter 4.
For Control Builder/Signal
Diagram application use only.

DI5

Data Init.

Optional

VOTER5

Description of Voter 5.
For Control Builder/Signal
Diagram application use only.

DI6

Data Init.

Optional

VOTER6

Description of Voter 6.
For Control Builder/Signal
Diagram application use only.

DI7

Data Init.

Optional

VOTER7

Description of Voter 7.
For Control Builder/Signal
Diagram application use only.

DI8

Data Init.

Optional

VOTER8

Description of Voter 8.
For Control Builder/Signal
Diagram application use only.

DI9

Data Init.

Optional

VOTER9

Description of Voter 9.
For Control Builder/Signal
Diagram application use only.

DI10

Data Init.

Optional

VOTER10

Description of Voter 10.


For Control Builder/Signal
Diagram application use only.

DI11

Data Init.

Optional

VOTER11

Description of Voter 11.


For Control Builder/Signal
Diagram application use only.

DI12

Data Init.

Optional

VOTER12

Description of Voter 12.


For Control Builder/Signal
Diagram application use only.

DI13

Data Init.

Optional

VOTER13

Description of Voter 13.


For Control Builder/Signal
Diagram application use only.

DI14

Data Init.

Optional

VOTER14

Description of Voter 14.


For Control Builder/Signal
Diagram application use only.

REF_1100

8.5 LSAVTR

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

AUX1

G3 - SID

Data Init.

Required

Auxiliary record 1

LC

DI15

Data Init.

Optional

VOTER15

Description of Voter 15.


For Control Builder/Signal
Diagram application use only.

DI16

Data Init.

Optional

VOTER16

Description of Voter 16.


For Control Builder/Signal
Diagram application use only.

AALRT
The following table shows the alerts that can appear for an LSAVTR algorithm, an explanation of
each alert and the bit position of each alert.
LSAVTR alerts
BIT V ALUE

EXPLAN ATION

BIT POSITION

Trip Active

Inactive when OUT is in the normal operating state,


active when OUT is in the trip state.

Pre-Trip Active

Inactive when POUTD is in the normal operating state,


active when POUT is in the trip state.

Bypass Active

Active when there is a maintenance bypass on any input


(any BYPx parameter is True).

Startup Override
Active

Active whenever the startup bypass is active.

Deviation Limit
Exceeded

Active when the difference between the highest and


lowest non-bypassed INn value exceeds DVLIM. Forced
inactive when DVLIM is 0.0.

Expiration Reminder

Active when either a maintenance bypass or a startup


bypass is about to expire.

Bypassed Input
Pre-Tripped

Active if one or more bypassed inputs have exceeded the


pre-trip limit.

Bypassed Input
Tripped

Active if one or more bypassed inputs have exceeded the


trip limit.

Input Bad

Active if any input has bad status.

REF_1100

675

8.6 LSBDE

8.6

LSBDE
Description
The LSBDE algorithm generates a True (1) digital output when the digital input makes a positive
(False-to-True) or a negative (True-to-False) transition since the last execution of the algorithm. If
there has been no transition, the digital output of the algorithm is False (0).
The LSBDE algorithm supports signal status propagation.
IN is the digital input signal and status.
OUT is the digital output signal and status.
Functional Symbol

Algorithm Execution
The Bi-directional Edge Trigger algorithm examines the input value, compares it to the previous
input value, and sets the output True for one scan period when the input has changed. Otherwise,
the output is False. The status of the output value is set to the status of the input value.
The following figure illustrates how the Bi-directional Edge Trigger algorithm responds to a
change in input:

Figure 6: LSBDE algorithm execution example

676

REF_1100

8.6 LSBDE
Status Handling
The output status is set to the input status.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Input

LD

OUT

Variable

Required

Output

LD

REF_1100

677

8.7 LSBFI

8.7

LSBFI
Description
The Logic Solver Boolean Fan Input (LSBFI) algorithm generates a digital output based on the
weighted binary sum, binary coded decimal (BCD) representation, transition state, or logical OR
of one to 16 digital inputs. The algorithm supports signal status propagation.
RST (Reset First Weighted Output) is the input that, when True (1), clears FOUT (First Binary
Weighted Output) and activates the trap condition after all the inputs go False.
IN1 through INx are the digital input values and statuses (as many as 16 inputs).
OUTI is the unsigned 32-bit binary weighted output value that represents the bit combination of
the inputs (INx).
OUT is the output value that represents the logical OR of the inputs (INx).
FOUT is the binary weighted output of the digital input values when one or more inputs is set after
RST is set.
Functional Symbol

678

REF_1100

8.7 LSBFI
Algorithm Execution
The Boolean Fan Input algorithm examines the digital input values at each algorithm execution.
The OUTI output is set to the sum of the bit values of the True inputs (IN1 is weighted as 1, IN2
as 2, IN3 as 4, IN4 as 8, and so on). The status of OUTI is set to the worst status among the
inputs.
When FOUT indicates a trap has not yet occurred (its value is False[0]) and one or more of the
inputs have become True, a trap condition is flagged and held by copying the value of OUTI to
FOUT. Thereafter, the FOUT value updates when the INx values transition from all False (0) to
one or more True (1). The status of FOUT is equal to the status of OUTI when the trap occurred.
The value of OUT is the logical OR of the digital inputs. OUT status is set to the worst status
among the inputs.
Note: Once the FOUT output is reset, the Boolean Fan Input algorithm does not set it again until
all of the INx values return to the False (0) state.
To support thumbwheel switch interfaces, the Boolean Fan Input algorithm uses a parameter to
store the binary coded decimal (BCD) representation of the digital inputs. The first four digital
inputs are used to construct the BCD ones digit. (Within these first four bits, the first input is the
least-significant bit.) The remaining sets of four inputs indicate the BCD tens, hundreds, and
thousands digits. When the four bits representing a digit are greater than nine, the digit is limited
to nine.
The following figure is an example of Boolean Fan Input algorithm execution for OUTI = 5510.
The result is BCD = 1586 and OUT = True.

Figure 7: LSBFI algorithm execution example


Status Handling
The OUTI and OUT statuses are set to the worst status among the inputs. The FOUT status is the
worst status among the inputs when the FOUT value is written. The FOUT status is reset when
the FOUT value is cleared.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

-NOFIN

REF_1100

Y0 - Byte

Required

DESCRIPTION

Number of Inputs
(automatically
incremented by
system)

MIN.
POINT
RECORD

679

8.7 LSBFI

680

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input 1

LD

IN2

Variable

Required

Input 2

LD

IN3

Variable

Optional

Input 3

LD

IN4

Variable

Optional

Input 4

LD

IN5

Variable

Optional

Input 5

LD

IN6

Variable

Optional

Input 6

LD

IN7

Variable

Optional

Input 7

LD

IN8

Variable

Optional

Input 8

LD

IN9

Variable

Optional

Input 9

LD

IN10

Variable

Optional

Input 10

LD

IN11

Variable

Optional

Input 11

LD

IN12

Variable

Optional

Input 12

LD

IN13

Variable

Optional

Input 13

LD

IN14

Variable

Optional

Input 14

LD

IN15

Variable

Optional

Input 15

LD

IN16

Variable

Optional

Input 16

LD

RST

Required

Reset First Weighted


Output

LD

FOUT

Required

First Binary Weighted


Output

LA

BCD

Optional

BCD Representation
of Inputs

LA

OUT

Variable

Optional

Logical Output

LD

OUTI

Variable

Optional

Binary Weighted
Output

LA

ATRAP

X1 - Byte

Tunable

Required

Enable First-Out Trap


0=No, 1=Yes

Variable
Variable
Variable

REF_1100

8.8 LSBFO

8.8

LSBFO
Description
The Logic Solver Boolean Fan Output (LSBFO) algorithm decodes a binary weighted input to
individual bits and generates a digital output value for each bit. The algorithm supports signal
status propagation.
IN is the unsigned 32-bit binary weighted input value and status.
OUT1 through OUTx are the digital output values and statuses (as many as 16 outputs) that
represent the bit of the input.
Functional Symbol

Algorithm Execution
The number of outputs to the LSBFO algorithm is an extensible parameter. The algorithm default
is two outputs. Use the Control Builder (see Ovation Control Builder User Guide) to add additional
output pins.
The LSBFO algorithm treats the unsigned 32-bit input as a binary weighted value. The individual
bits that comprise this value are translated to the algorithm's digital outputs.
The first digital output represents the least-significant bit of the translated input value. The second
digital output is the next least-significant bit, and so on. The status of the input (IN) is passed to
the statuses of the digital outputs (OUTx).
The following is an example of Boolean Fan Output algorithm execution for IN = 5153.

REF_1100

681

8.8 LSBFO
Status Handling
The statuses of the algorithm outputs (OUTx) are set equal to the status of the algorithm input
(IN).
Algorithm Definitions

682

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOFOT

Y0 - Byte

Data Init

Required

Number of Outputs

IN

Required

Binary Weighted
Input

LA, LD, LP

OUT1

Variable

Optional

Output 1

LD

OUT2

Variable

Optional

Output 2

LD

OUT3

Variable

Optional

Output 3

LD

OUT4

Variable

Optional

Output 4

LD

OUT5

Variable

Optional

Output 5

LD

OUT6

Variable

Optional

Output 6

LD

OUT7

Variable

Optional

Output 7

LD

OUT8

Variable

Optional

Output 8

LD

OUT9

Variable

Optional

Output 9

LD

OUT10

Variable

Optional

Output 10

LD

OUT11

Variable

Optional

Output 11

LD

OUT12

Variable

Optional

Output 12

LD

OUT13

Variable

Optional

Output 13

LD

OUT14

Variable

Optional

Output 14

LD

OUT15

Variable

Optional

Output 15

LD

OUT16

Variable

Optional

Output 16

LD

Variable

REF_1100

8.9 LSCALC

8.9

LSCALC
Description
The Logic Solver Calculation/Logic (LSCALC) algorithm evaluates an expression you define to
determine the algorithm's outputs. You can use mathematical functions, logical operators,
constants, and parameter references in the expression.
IN1 through INx are the inputs to the algorithm (as many as 16 inputs).
OUT1 through OUTx are the algorithm outputs (as many as 16 outputs).
Functional Symbol

Algorithm Execution
The LSCALC algorithm uses as many as 16 inputs and 16 outputs to evaluate its contained
expression. In addition, the expression evaluator uses constants and module parameter
references that you specify to evaluate the expression. Expressions can only reference
parameters that are internal to the SIS module in which the LSCALC block is located. External
references from LSCALC algorithm expressions are not allowed. The calculated values are
assigned to internal module references or algorithm outputs for use as parameters or inputs to the
control strategy in other algorithms.
Expressions
Expressions are structured text in a specific syntax and are made up of operands, operators,
functions, constants, and keywords. You write expressions using the LSCALC editor window (see
Ovation Control Builder User Guide).
Note: The values of temporary variables in expressions are not preserved on download or
restored on restart. Temporary variables start with a value of 0 (zero) on the first scan after a
download or restart.
Status Handling
The algorithm's outputs are initialized to Bad. You must explicitly set the status of outputs by
writing to the .ST field of an OUTx parameter. The .ST field is not automatically written when the
.CV field of an OUTx parameter is written.
If the LSCALC algorithm executes a divide by zero expression, the only effect is that status of the
output is set to BAD.

REF_1100

683

8.9 LSCALC
Algorithm Definitions

684

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

AUX1

G1 - SID

Data Init

Required

Auxiliary record 1

LC

NOFIN

X1 - Byte

Data Init.

Required

Number of Inputs
(automatically
incremented by system)

NOFOT

Y0 - Byte

Data Init

Required

Number of Outputs

LCKD

Data Init.

Required

Program Edits:
0 = Unlocked
1 = Locked

NOANL

Data Init.

Required

Number of analog
constants

AC01

Data Init.

Required

0.000000

Analog Constant 1 $(AC1)

AC02

Data Init.

Required

0.000000

Analog Constant 2 $(AC2)

AC03

Data Init.

Required

0.000000

Analog Constant 3 $(AC3)

AC04

Data Init.

Required

0.000000

Analog Constant 4 $(AC4)

AC05

Data Init.

Required

0.000000

Analog Constant 5 $(AC5)

AC06

Data Init.

Required

0.000000

Analog Constant 6 $(AC6)

AC07

Data Init.

Required

0.000000

Analog Constant 7 $(AC7)

AC08

Data Init.

Required

0.000000

Analog Constant 8 $(AC8)

AC09

Data Init.

Required

0.000000

Analog Constant 9 $(AC9)

AC10

Data Init.

Required

0.000000

Analog Constant 10
$(AC10)

AC11

Data Init.

Required

0.000000

Analog Constant 11
$(AC11)

AC12

Data Init.

Required

0.000000

Analog Constant 12
$(AC12)

AC13

Data Init.

Required

0.000000

Analog Constant 13
$(AC13)

AC14

Data Init.

Required

0.000000

Analog Constant 14
$(AC14)

AC15

Data Init.

Required

0.000000

Analog Constant 15
$(AC15)

AC16

Data Init.

Required

0.000000

Analog Constant 16
$(AC16)

NODIG

Data Init.

Required

Number of digital
constants

DC01

Data Init.

Required

Digital Constant 1 $(DC1)


0 = False
1 = True

DC02

Data Init.

Required

Digital Constant 2 $(DC2)


0 = False
1 = True

REF_1100

8.9 LSCALC

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DC03

Data Init.

Required

Digital Constant 3 $(DC3)


0 = False
1 = True

DC04

Data Init.

Required

Digital Constant 4 $(DC4)


0 = False
1 = True

DC05

Data Init.

Required

Digital Constant 5 $(DC5)


0 = False
1 = True

DC06

Data Init.

Required

Digital Constant 6 $(DC6)


0 = False
1 = True

DC07

Data Init.

Required

Digital Constant 7 $(DC7)


0 = False
1 = True

DC08

Data Init.

Required

Digital Constant 8 $(DC8)


0 = False
1 = True

DC09

Data Init.

Required

Digital Constant 9 $(DC9)


0 = False
1 = True

DC10

Data Init.

Required

Digital Constant 10
$(DC10)
0 = False
1 = True

DC11

Data Init.

Required

Digital Constant 11
$(DC11)
0 = False
1 = True

DC12

Data Init.

Required

Digital Constant 12
$(DC12)
0 = False
1 = True

DC13

Data Init.

Required

Digital Constant 13
$(DC13)
0 = False
1 = True

DC14

Data Init.

Required

Digital Constant 14
$(DC14)
0 = False
1 = True

DC15

Data Init.

Required

Digital Constant 15
$(DC15)
0 = False
1 = True

DC16

Data Init.

Required

Digital Constant 16
$(DC16)
0 = False
1 = True

REF_1100

685

8.9 LSCALC

686

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

R1 - Real

Variable

Optional

Input 1

LX

IN2

R2 - Real

Variable

Optional

Input 2

LX

IN3

R3 - Real

Variable

Optional

Input 3

LX

IN4

R4 - Real

Variable

Optional

Input 3

LX

IN5

R5 - Real

Variable

Optional

Input 4

LX

IN6

R6 - Real

Variable

Optional

Input 5

LX

IN7

R7 - Real

Variable

Optional

Input 6

LX

IN8

R8 - Real

Variable

Optional

Input 7

LX

IN9

R9 - Real

Variable

Optional

Input 8

LX

IN10

S1 - Real

Variable

Optional

Input 9

LX

IN11

S2 - Real

Variable

Optional

Input 10

LX

IN12

S3 - Real

Variable

Optional

Input 11

LX

IN13

S4 - Real

Variable

Optional

Input 12

LX

IN14

S5 - Real

Variable

Optional

Input 13

LX

IN15

S6 - Real

Variable

Optional

Input 14

LX

IN16

S7 - Real

Variable

Optional

Input 15

LX

OUT1

AUX1:R1 Real

Variable

Required

Output 1

LA

OUT2

AUX1:R2 Real

Variable

Optional

Output 2

LA

OUT3

AUX1:R3 Real

Variable

Optional

Output 3

LA

OUT4

AUX1:R4 Real

Variable

Optional

Output 4

LA

OUT5

AUX1:R5 Real

Variable

Optional

Output 5

LA

OUT6

AUX1:R6 Real

Variable

Optional

Output 6

LA

OUT7

AUX1:R7 Real

Variable

Optional

Output 7

LA

OUT8

AUX1:R8 Real

Variable

Optional

Output 8

LA

OUT9

AUX1:R9 Real

Variable

Optional

Output 9

LA

OUT10

AUX1:S1 Real

Variable

Optional

Output 10

LA

OUT11

AUX1:S2 Real

Variable

Optional

Output 11

LA

OUT12

AUX1:S3 Real

Variable

Optional

Output 12

LA

REF_1100

8.9 LSCALC

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OUT13

AUX1:S4 Real

Variable

Optional

Output 13

LA

OUT14

AUX1:S5 Real

Variable

Optional

Output 14

LA

OUT15

AUX1:S6 Real

Variable

Optional

Output 15

LA

OUT16

AUX1:S7 Real

Variable

Optional

Output 16

LA

BLERR

G0 Integer

Variable

Optional

Block Error Status


32 = Memory Failure
64 = Output Failure
8192 = Config. Error

LA, LD,
LP

8.9.1 LSCALC Expression Editor


Description
The Logic Solver is capable of executing Structured Text Language expressions. Expressions
represent calculations and logic and have a specific syntax. Expressions for the Logic Solver are
created in the Logic Solver Calculation/Logic (LSCALC) algorithm. To facilitate the writing of
expressions, use the Expression Editor. For specific help on using the Expression Editor, select
the Help button in the Expression Editor window.
CAUTION: When writing expressions using an external editor, only use a plain ASCII
text editor (Notepad is recommended). Using other editors can cause the expression to
change during the load and save process.
The following functions and features are not supported in expressions in the Logic Solver:

References to I/O DSTs.

References to external parameters (outside the module containing the LSCALC algorithm).

Writing to an OUT parameter of another LSCALC algorithm.

Reading or writing .CST and .AWST fields for any parameter.

String functions.

Array declarations.

Looping constructs:
While-Do-End_While
Goto
Label
Exit

REF_1100

687

8.9 LSCALC
Syntax Rules for Expressions in the Logic Solver
An expression is comprised of operands, constants, operators, functions, and comments. Each
expression must follow a specific syntax to be valid. The Expression Editor validates the
expression when parsing.
The Option Explicit behavior is enforced even if the statement is not present in the expression,
requiring declaration of temporary variables.
References (Inputs, Outputs, and Other Module Parameters)
The Logic Solver subset of expressions supports only references to the inputs and outputs of the
Logic Solver Calc/Logic algorithm and to other module/algorithm parameters within the same
module. External and dynamic references are not supported.
If you do not specify the field, CV is assumed.
Relative Notation
The notation rules for referencing parameters within and outside of the LSCALC algorithm are
shown in the following table.
Note: INx and OUTx parameters do not require quotes.
Notation Rules
NOTATION

USED

TO:

'PARAM.FIELD'

Reference a parameter in this LSCALC algorithm.

'^/PARAM.FIELD'

Reference a module-level parameter.

'^/BLOCK/PARAM.FIEL
D'

Reference a parameter in another algorithm. This algorithm must


be in the same module as the LSCALC algorithm.

Note: If you do not specify the field, CV is assumed.


Statements for Expressions in the Logic Solver
The following statement types are allowed in Logic Solver Calc/Logic expressions. Statements
are separated by semicolons.
Statement types
STATEMENT TYPE

EX AM PLES

Assignment

OUT1 := ABS(IN1);
'OUT2' := '^/BLOCK1/PARAM1';

688

REF_1100

8.9 LSCALC

STATEMENT TYPE

EX AM PLES

If Then Else

IF IN1 = 1 THEN
OUT1 := 1;
ELSE
OUT1 := 0;
ENDIF;

Explicit declaration of temporary


variables using VAR...END_VAR

Option Explicit; (* optional *)


VAR
TEMP1;
TEMP2;
END_VAR;

Comment (* *)

(* some comment *)

Comment (REM)

REM some comment

Assignment Statements
The assignment (:=) statement allows the assignment of an expression to a reference, a
temporary variable, or an output to locations inside and outside of the current algorithm.
Syntax:
'reference' := expression;
(* only references to 'OUTx' and local module parameters are possible *)
or
tempvar := expression;
or
OUTn := expression;
The assignment (:=) statement syntax has these parts:
PART

DESCRIPTION

Reference
or
tempvar
or
output

One of the following is required: reference, tempvar, or


output.

Expression

Required. Any valid expression.

REF_1100

689

8.9 LSCALC
If...Then...Else...End_If
The IF-THEN-ELSE-END_IF structure allows you to execute conditional code in expressions.
When an algorithm tests a condition that evaluates to TRUE, it executes the set of statements
after THEN. If the condition evaluates to FALSE, it executes the set of statements after ELSE. If
the condition evaluates to FALSE, and there is no ELSE, then the IF-THEN-ELSE-END_IF
structure takes no action.
Syntax:
If condition Then [statements]
[Else [elsestatements]]
End_If
The IF-THEN-ELSE-END_IF statement syntax has the following parts:
PART

DESCRIPTION

Condition

Required. An expression that evaluates to True or False.

Statements

Required. One or more statements separated by semi-colons;


executed if condition is True.

Elsestatements

Optional -- but required if the keyword ELSE is used. One or more


statements separated by semi-colons; executed if the condition is
False.

Note: The Structured Text Language requires the use of END_IF (with underscore). However,
the Ovation software allows you to use either END_IF or ENDIF.
Using Variables in Expressions for Logic Solvers
You can simplify complex calculations by using variables to temporarily store values. All variables
are floating point numbers. The value of the variable is retained from one scan to the next. The
initial (first scan) value of a variable is zero. The scope/visibility of variables is limited to the Logic
Solver Calc/Logic algorithm in which they exist.
Declaring Variables
You must declare variables used in the Logic Solver, because the Option Explicit statement is
implied. Option Explicit enables checking to ensure that a variable has been created in a
VAR...END_VAR statement before it is used in an expression. Variable names must start with a
letter or underscore. Variable names can contain only letters (A-Z, a-z), numbers (0-9), and
underscores ( _ ) and are not case sensitive.
Note: Some keywords are reserved for Ovation expressions and cannot be used as local
variable names.

690

REF_1100

8.9 LSCALC
Syntax:
Option Explicit; (* optional *)
VAR
[identifers]
END_VAR;
The VAR...END_VAR statement syntax has these parts:
PART

DESCRIPTION

Identifiers

Required. One or more names of temporary variables separated by semi-colons.

Operands
Operands can be any of the following:

Constants - an unchangeable value.

Inputs - references to Logic Solver Calc/Logic (LSCALC) algorithm inputs (IN1..IN16, float
with status).

Outputs - references to Logic Solver Calc/Logic (LSCALC) algorithm outputs (OUT1..OUT16,


float with status).

Module references to module parameters that reside in the same module as the given
expression.

Temporary variables.

Constants
Constants are predefined, unchangeable values represented by keywords in expressions.
Constants let you test values against system values without having to know their internal
representations. These constants can be used as numerical values only. Never use keywords as
temporary variables in Logic Solver Calc/Logic algorithms.
The Logic Solver Calc/Logic algorithm accepts the following constant types:

Integer.

Float.

Named Constants.

Enumerated Constants.

Named Constants
The following tables list the named constants supported in expressions for the Logic Solver.
These tables are organized into types of named constants for easy reference.
TRUE/FALSE Constants
CONSTANT

EXPLAN ATION

FALSE

Boolean FALSE. This is always equivalent to 0.0 whether comparing or


assigning.

REF_1100

691

8.9 LSCALC

CONSTANT

EXPLAN ATION

True

Boolean TRUE. If assigning ('item' := TRUE) then 'item' is set to 1.0. If


comparing to TRUE ('item' = TRUE), the statement is TRUE if the value of 'item'
is >= 1.0.

Note: Comparing TRUE/FALSE constants in an expression should only be used against


Boolean elements or when the floating point value is either 0.0 (FALSE) or >=1.0 (TRUE).
Status Constants
Status constants are implemented as an 8-bit status word. The numeric value of the status word
is determined by which bits are set.
A Logic Solver Calc/Logic algorithm's OUT parameters default to a status of BAD (0). The
expression must explicitly set the status. Status propagation is not automatic in the Logic Solver
Calc/Logic algorithms. You can set the status to a numeric value.
You can also use the GOOD, BAD or UNC constants (for example, 'out1.st' := UNC). There are
also constants for the limit status (the two least significant bits of the status word). If the signal is
also limited or constant, you can use these additional constant words (LIMITED_CONSTANT,
LIMITED_HIGH, LIMITED_LOW), but you must combine them with the status constant (GOOD,
BAD, UNC). For example, to set the status to GOOD High Limited, use the expression 'out1.st':=
GOOD | LIMITED_HIGH. The "|" operator is a bitwise OR function. The expression writes a value
of 130 to the status.
Status Constants
CONSTANT

EXPLAN ATION

BAD

If assigning BAD to a parameter status, the status is set to BAD NonSpecific


NotLimited (numeric value 0).
When comparing a status to BAD, the expression evaluates to TRUE if the
status is <=63.

GOOD

If assigning GOOD to a parameter's status, the status is set to


GoodNonCascade NonSpecific NotLimited (numeric value 128).
When comparing a status to GOOD, the expression evaluates to TRUE if the
status is GoodNonCascade (that is, in the range of (inclusive) 128 to 191).
To test a status for the entire range of GOOD statuses (GoodNonCascade and
GoodCascade), use the greater than or equal to operator (>=). That is, the value
is >= 128.

LIMITED_CONSTANT

When a status field is compared to LIMITED_CONSTANT using the equality


operator (=), the result will be TRUE if the limit status is LIMITED_CONSTANT.

LIMITED_HIGH

When a status field is compared to LIMITED_HIGH using the equality operator


(=), the result will be TRUE if the limit status is LIMITED_HIGH.

LIMITED_LOW

When a status field is compared to LIMITED_LOW using the equality operator


(=), the result will be TRUE if the limit status is LIMITED_LOW.

UNC

If assigning UNC to a parameter status, the status is set to Uncertain


NonSpecific NotLimited (numeric value 64).
When comparing a status to UNC, the expression evaluates to TRUE if the
status has a value in the range of (inclusive) 64 to 127.

692

REF_1100

8.9 LSCALC
Named State Constants
Named state constants are members of named sets in the form: '<named set name>: <named
state name>'. For example, to use the Tripped state of an LSCEM algorithm use
'$CEM_state:Tripped'.
Operators
The Logic Solver Calc/Logic algorithm supports the following operators:
Unary Operators
OPERATOR TYPE

EX AM PLE

unary minus (change sign)

-'a'

unary plus

+'a'

logical not

!'a' or NOT 'a'

bitwise not

~'a'

Binary Operators
OPERATOR TYPE

EX AM PLE

logical or

'a' OR 'b'

logical exclusive or

'a' XOR 'b'

logical and

'a' AND 'b'

bitwise or

'a' | 'b'

bitwise exclusive or

'a' ^ 'b'

bitwise and

'a' & 'b'

equals comparison

'a' = 'b'

not equals comparison

'a' <> 'b' or


'a' != 'b' or
'a' ~= 'b'

less than comparison

'a' < 'b'

greater than comparison

'a' > 'b'

less than or equal to comparison

'a' <= 'b'

greater than or equal to


comparison

'a' => 'b'

addition

'a' + 'b'

subtraction

'a' - 'b'

multiply

'a' * 'b'

divide

'a' / 'b'

REF_1100

693

8.9 LSCALC

OPERATOR TYPE

EX AM PLE

modulus (remainder)

'a' MOD 'b' or


'a' % 'b'

power

'a' ** 'b'

Conditional Operator
The conditional operator (?) evaluates one of two expressions, depending on the value of a
condition. The syntax for using the operator is
condition?[expression1]:[expression2]
For example, the condition out1:=(in1=1)?in2:in3 means if IN1 is equal to 1 then OUT1 is set to
the value of IN2, if IN1 is NOT equal to 1 OUT1 is set to the value of IN3.
Functions
The Logic Solver Calc/Logic algorithm supports the following functions.
Math Functions

694

FUNCTION

DESCRIPTION

NOTES

ABS (x)

Absolute value of x

Returns the absolute value of parameter x.

EXP (x)

Exponential of x

Returns the exponential of parameter x if


successful. On overflow, the function returns
the MAX floating point (3.4E38). On
underflow, the function returns a zero value.

EXPT (x,y)

Raise x to the power of y

Computes x raised to the power of y. If x


equals zero and y equals zero, EXPT returns a
value of one (1). If x is less than zero and y is
not an integer, EXPT returns a value of zero
(0).

FRACT (x)

Returns fractional part of a


number

Returns the fractional part of x. The result is


positive if x is greater than or equal to zero.
The result is negative if x is less than zero.

LN (x)

Natural logarithm of x

Returns the natural logarithm of x if successful.


If x is not positive, LN returns a zero value.

LOG (x)

Log base 10 of x

Returns the logarithm base 10 of x if


successful. If x is not positive, LOG returns a
zero value.

LOG2 (x,y)

Log base x of y

Returns the logarithm base x of y if successful.


If x or y is not positive, LOG2 returns a zero
value.

MAX (x,y)

Maximum of x and y

The return value is the greater of the two


specified values.

MIN (x,y)

Minimum of x and y

The return value is the smaller of the two


specified values.

ROUND (x)

Round x to nearest float

Rounds x to the nearest integer value.

REF_1100

8.9 LSCALC

FUNCTION

DESCRIPTION

NOTES

SIGN (x)

Sign indicator of x

Returns a Boolean True value (1) if x is


non-negative. Returns a Boolean False value
(0) if x is negative.

SQRT (x)

Square root of x

Returns the square-root of x. If x is negative,


SQRT returns x.

TRUNC (x)

Floor function

Returns a value representing the largest


integer that is less than or equal to x. That is,
TRUNC rounds x to the next lowest integer
value.

Trigonometric Functions
FUNCTION

DESCRIPTION

NOTES

ACOS (x)

Arc cosine of x

Returns the arccosine of x in the range 0 to pi


radians. If x is less than -1 or greater than 1,
ACOS returns a zero value.

ASIN (x)

Arc sine of x

Returns the arcsine of x in the range -pi/2 to


pi/2 radians. If x is less than -1 or greater than
1, ASIN returns a zero value.

ATAN (x)

Arc tangent of x

Returns the arctangent of x in radians.

COS (x)

Cosine of x

Returns the cosine of x where x is in radians.

SIN (x)

Sine of x

Returns the sine of x where x is in radians.

TAN (x)

Tangent of x

Returns the tangent of x where x is in radians.

FUNCTION

DESCRIPTION

NOTES

ASR16 (i,n)

Arithmetic Shift i Right n bits.

Assumes 16 bit operand for sign preservation.

ROL (x,y)

Rotate x to the left by y bits.

Rotates the unsigned x by y bits to the left. The


function wraps bits rotated off one end of the
value to the other end. (Same as ROTL.)

ROR (x,y)

Rotate x to the right by y bits.

Rotates the unsigned x by y bits to the right. The


function wraps bits rotated off one end of the
value to the other end. (Same as ROTR.)

ROTL (x,y)

Rotate x to the left by y bits.

Rotates the unsigned x by y bits to the left. The


function wraps bits rotated off one end of the
value to the other end. (Same as ROL.)

ROTR (x,y)

Rotate x to the right by y bits.

Rotates the unsigned x by y bits to the right. The


function wraps bits rotated off one end of the
value to the other end. (Same as ROR.)

ROTL16 (i,n)

Rotate i Left n bits

Assumes 16 bit operand.

ROTR16 (i,n)

Rotate i Right n bits

Assumes 16 bit operand.

Bitwise Functions

REF_1100

695

8.9 LSCALC

FUNCTION

DESCRIPTION

NOTES

SHL (x,y)

Shift x left by y bits, no carry

Shifts x left by y number of positions and fills


with zeroes (0).

SHR (x,y)

Shift x right by y bits, no carry

Shifts x right by y number of positions and fills


with zeroes (0).

Miscellaneous Functions
FUNCTION

DESCRIPTION

NOTES

EUP (e,p0,p100)

Conversion from Engineering Units (EU)


(e) to percent given the values at 0% (p0)
and 100% (p100).

Standard linear interpolation.

PEU (p,p0,p100)

Conversion from Percent (p) to


Engineering Units (EU) given the values
at 0% (p0) and 100% (p100).

Standard linear interpolation.

STBT (i,b,n)

Set a bit position (n) in an integer value (i)


to a given Boolean value (b).

SYSSTAT (x)

This function returns a TRUE or FALSE


when queried for system condition x.
User passes one of the enumerated
values for $sysstat_ls_opts.

Allowable values for $sysstat_ls_opts


are:
Switchover
MyDownload
Powerfail

Comments
Comments are statements placed in an expression that act solely as a documentation tool for
users. The content of a comment has no effect on any processing. The structures of a comment
can take two forms:

696

(* *) - Anything between "(*" and "*)" is treated as a comment, even if it spans lines. These
comments do not nest - the first occurrence of "*)" will terminate the comment no matter how
many "(*" have occurred.

REM - Text on a line following "REM " (note the required space) is treated as a comment.

REF_1100

8.10 LSCEM

8.10 LSCEM
Description
Use the Logic Solver Cause and Effect Matrix (LSCEM) algorithm to define interlock and
permissive logic that associates as many as 16 inputs (CSx Input Cause parameters) and 16
outputs (EFFx Output Effect parameters). Use the algorithm's MATRX parameter to identify one
or more causes that cause each effect to trip. When a CSx becomes active, all effects associated
with that CSx also trip.
An LSCEM algorithm provides the logic for one or more safety instrumented functions (SIF). CSx
inputs are typically connected from upstream voter algorithms, but may come from any source
indicating either an active (0) or inactive (1) process trip condition. The EFFx outputs are typically
connected to downstream output algorithms.
Because the Logic Solver is a de-energize to trip environment, the Normal operating value of
EFFx parameters is 1 and the Tripped value is 0.
By default, the algorithm has four CSx inputs and one EFFx output. In addition, you can use the
DCx and DEx parameters to label causes and effects.
Functional Symbol

REF_1100

697

8.10 LSCEM
Algorithm Execution
Each EFFx output has a corresponding STAx (Current State of Effect) parameter. EFFx can be
either 1 (Normal) or 0 (Tripped). STAx can have one of six values shown in the following figure.
The arrows in the figure show the possible transitions between state values during normal
operation.

Figure 8: State Transition diagram for STAx parameters


The values of STAx depend on whether EFFx is Tripped or Normal. The following table shows the
combinations that can occur.
EFFX

S T AX

Normal

Normal
Trip Initiated-Delayed

Tripped

Tripped
Waiting for Reset Permit
Ready to Reset
Waiting to Start Permit

698

REF_1100

8.10 LSCEM
After an initial download or a restart of the Logic Solver, the initial value of every EFFx is Tripped.
An effect remains Tripped as long as any causes associated with that effect are tripped. After all
associated causes clear the effect become Normal.
The default behavior of the algorithm is for EFFx output values to be a function of the value and
status of the CSx inputs. EFFx Trips when one or more CSx associated with it is active.
You can modify this behavior with the LSCEM algorithm's parameters in a number of ways:

Use DTMx (Trip Delay for Effect) to set a delay time for EFFx to transition to Tripped.

Use RPTx (Reset Permit) to require an operator reset to transition EFFx to Normal. RPTx can
be set from process feedback or it could be a manual operator reset, such as from a key
switch.

Use SPTx (Start Permit) to force STAx to Waiting for Start Permit, which prevents EFFx from
becoming Normal unless SPTx is True.

Use FPRMT (Permit Force Effects) to allow forcing of effects.

Use FOPx (Force Option) to allow forcing effects without FPRMT being True.

Use FOPx to allow forcing multiple effects simultaneously.

Use FEFx (Force Effect) to set EFFx to Tripped or Normal.

Note: Emerson recommends that you use the FEFx parameters to manipulate final elements
only when the process is not running.

Use CMASK (Cause Mask) to prevent selected causes from becoming active.

If all you require is simple, time-based sequencing, use DTMx (Trip Delay for Effect) to prevent
EFFx from going directly to Tripped when an associated cause becomes inactive. While DTMx is
greater than 0 (zero), STAx (Current State) is Trip Initiated - Delayed, which keeps EFFxNormal.
To require an operator reset before an effect can return to Normal, use RRSx (Require Reset for
Effect), RPTx (Reset Permit), and RSTx (Reset). When RRSx is True, EFFx remains Tripped
when an associated cause is active. How STAx transitions depends on RPTx.
If RPTx is True (the default value), STAx transitions from "Tripped directly" to "Ready to Reset."
Configure RPTx to False to make STAx transition from "Tripped" to "Waiting for Reset Permit."
The reset permit can be written from process feedback or set by an operator from a key switch or
other hardware device. When RPTx becomes True, STAx transitions to "Ready to Reset." From
here, setting RSTx to True transitions STAx and EFFx to Normal.
Use SPTx (Start Permit) in a similar way to require permission to transition STAx from "Waiting for
Start Permit." The default value of SPTx is True, which allows the transition. If SPTx is False and
associated causes are cleared, STAx transitions from "Tripped" to "Waiting for Start Permit." To
move STAx and EFFx to Normal, set SPTx to True.
Use a combination of FPRMT, FOPx, and FEFx to force EFFx to a desired value. To force effects
you must first either set FPRMT to True, or select the FOPx option "Force permit is not required to
force Effects." Changing FPRMT from True to False removes current forces.
The parameter LTRIP is True when:

FPRMT is required to force an Effect (FOPx option Force permit is not required to force
Effects is not selected).

ACSx (Active Causes for Effect) is non-zero.

FEFx is Force Normal.

REF_1100

699

8.10 LSCEM
If LTRIP (Latent Trip Indicator) is True, setting FPRMT to False trips Effects that have been
forced to Normal.
Setting FEFx to Force Trip immediately transitions EFFx to Tripped even if DTMx is configured.
Setting FEFx to Force Normal immediately transitions EFFx to Normal, regardless of any
configured recovery strategy. If STAx is Trip Initiated-Delayed, setting FEFx to Force Normal
returns STATEn to Normal.
You can manipulate FEFx from runtime interfaces. Manipulating FEFx from within a module is not
likely to be useful. Use the FOPx option "Forcing of multiple Effects is allowed" to set whether
multiple effects can be forced at the same time.
FOPx includes an additional option: Force permit control should be visible in operator interface.
Select this option if your force effect control is in an operator display. Do not select this option if
you are using a key switch or other manual means to force effects.
Manipulate the parameter CMASK to prevent one or more causes from becoming active under
certain process conditions. Setting a bit in CMASK to True prevents the corresponding CSx from
tripping any associated effects. If after an effect is tripped CMASK masks the causes that tripped
that effect, STAx transitions out of Tripped. The state it transitions to depends on the configuration
of the algorithm parameters FEFx, SPTx, RRSx, and RPTx. Manipulate CMASK using a
Calc/Logic algorithm based on process conditions, for example, the current batch phase. Do not
manipulate CMASK directly from runtime interfaces. To bypass process conditions use upstream
voter algorithms instead.
The OVRx (High Priority Override) parameter indicates if EFFx is being overridden. The OVRx
values are:

None.

Forced to Tripped.

Forced to Normal.

All associated Causes masked.

ACSx indicates the currently active causes that are associated with EFFx that are not masked in
CMASK. FOTx indicates the cause or causes that first tripped EFFx. If additional causes become
active, FOTx does not change. FOTx retains its value until EFFx returns to Normal.
For example, if CS2 becomes active and EFF1 trips, ACS1 and FOT1 are both set to 2. If CS3
(which is also associated with EFF1) subsequently becomes active, FOT1 remains 2 and ACS1
becomes 6 (bits 2 and 3 of ACS1 are set).
The following table summarizes the state-dependant conditions necessary to transition EFFECTx
value between Tripped and Normal.
RRSX
VALUE

False

700

STATE-DEPENDENT CONDITIONS REQUIRED

TO

FROM TRIPPED

FROM NORMAL

TO

NORM AL

(All associated non-masked causes are


inactive
and SPTx = True)
or
FEFx = Force Normal

TRANSITION EFFX
TO

TRIPPED

Any associated non-masked cause is active


or
FEFx = Force Trip
or
SOPT is set to Trip if Bad and any CSx status is
Bad.

REF_1100

8.10 LSCEM

RRSX
VALUE

True

STATE-DEPENDENT CONDITIONS REQUIRED

TO

FROM TRIPPED

FROM NORMAL

TO

NORM AL

(All associated non-masked causes are


inactive
and RPTx = True
and RSTx = True
and SPTx = True)
or
FEFx = Force Normal

TRANSITION EFFX
TO

TRIPPED

Any associated non-masked cause is active


or
FEFx = Force Trip
or
SOPT is set to Trip if Bad and any CSx status is
Bad.

The following descriptions and tables explain each state and the conditions necessary to
transition to other allowable states. Note that the value of the RSTx parameter is set to False at
the end of every execution independent of the current value of STAx.
STAx: Tripped
If STAx is Tripped, EFFx is also Tripped. STAx remains Tripped as long as one or more
associated non-masked causes are active and FEFx is not Force Normal or FEFx is Force Trip.
EFFx transitions from Tripped when all the associated non-masked causes are inactive. If an
operator reset is not required and SPTx is True, STAx is set to Normal. If SPTx is False, STAx
moves to Waiting for Start Permit. If an operator reset is required and RPTx is True, STAx
becomes Ready to Reset. If RPTx is False, STAx becomes Waiting for Reset Permit.
If FEFx is Force Normal, STAx changes to Normal regardless of the value of SPTx or RPTx.
The following table summarizes the possible changes STAx can make from Tripped.
TO TRANSITION ST AX TO...

REQUIRES

Waiting for Reset Permit

ACSx = 0
and FEFx = No Force
and RRSx = True
and RPTx = False

Ready to Reset

ACSx = 0
and FEFx = No Force
and RRSx = True
and RPTx = True

Waiting for Start Permit

ACSx = 0
and FEFx = No Force
and RRSx = False
and SPTx = False

Normal

ACSx = 0
and FEFx = No Force
and RRSx = False
and SPTx = True
or
FEFx = Force Normal

REF_1100

THE

FOLLOWING CONDITIONS

701

8.10 LSCEM
STAx: Waiting for Reset Permit
While STAx is Waiting for Reset Permit, EFFx is set to Tripped. STAx can transition to this state
from Tripped or Ready to Reset if RRSx is True. If RRSx becomes False while STAx is Waiting
for Reset Permit, STAx does not change until a reset occurs.
STAx changes back to Tripped if an associated non-masked cause becomes active or FEFx is
Force Trip.
STAx changes to Ready to Reset if RPTx becomes True.
If FEFx is Force Normal, STAx changes to Normal regardless of the current values of SPTx and
RPTx.
The following table summarizes the possible changes from Waiting for Reset Permit.
TO TRANSITION ST AX TO...

REQUIRES

Tripped

ACSx is not equal to 0


or
FEFx = Force Trip
or
SOPT is set to Trip if Bad and any CSx status is Bad.

Ready to Reset

RPTx = True

Normal

FEFx = Force Normal

THE

FOLLOWING CONDITIONS

STAx: Ready to Reset


STAx can transition to Ready to Reset from Tripped or Waiting for Reset Permit. EFFx is Tripped
when STAx is Ready to Reset.
To reach this state RRSx must be True. If RRSx becomes False while STAx is Ready to Reset,
the STAx does not change until a reset occurs.
If an associated non-masked cause becomes active or FEFx is Force Trip, STAx changes to
Tripped. If RPTx becomes False, STAx changes back to Waiting for Reset Permit.
If SPTx is True, the STAx changes to Normal when RSTx is True. If SPTx is False, RSTx
becoming True causes STAx to change to Waiting for Start Permit.
If FEFx is Force Normal, STAx changes to Normal regardless of the values of SPTx and RSTx.

702

REF_1100

8.10 LSCEM

The following table summarizes the possible changes of STA,i>n from Ready to Reset.
TO TRANSITION ST AX TO...

REQUIRES

Tripped

ACSx is not equal to 0


or
FEFx = Force Trip
or
SOPT is set to Trip if Bad and any CSx status is Bad.

Waiting for Reset Permit

RPTx = False

Waiting for Start Permit

RSTx = True
and SPTx = False

Normal

(RSTx = True
and SPTx = True)
or
FEFx = Force Normal

THE

FOLLOWING CONDITIONS

STAx: Waiting for Start Permit


STAx can change from Tripped or Ready to Reset to Waiting for Reset Permit. EFFx is Tripped
when STAx is Waiting for Start Permit.
If an associated non-masked cause becomes active or FEFx is Force Trip, STAx changes to
Tripped.
If SPTx is True, STAx changes to Normal.
If FEFx is Force Normal, STAx changes to Normal regardless of the current value of STAx.
The following table summarizes the possible changes of STAx from Waiting for Start Permit.
TO TRANSITION ST AX TO...

REQUIRES

Tripped

ACSx is not equal to 0


or
FEFx = Force Trip
or
SOPT is set to Trip if Bad and any CSx status is Bad.

Normal

SPTx = True
or
FEFx = Force Normal

REF_1100

THE

FOLLOWING CONDITIONS

703

8.10 LSCEM
STATEn: Normal
EFFx is Normal when STAx is Normal.
STAx changes when a trip is initiated, that is, when one or more non-masked causes associated
with EFFx become active and FEFx is not Force Normal or FEFx is Force Trip. If EFFx is not
being sequenced with other effects, STAx becomes Tripped immediately. Use DTMx to set how
long to delay the transition to Tripped. If DTMx is non-zero STAx changes to Trip
Initiated-Delayed. If FEFx is Force Trip, STAx becomes Tripped immediately.
The following table summarizes the possible changes from Normal.
TO TRANSITION ST AX TO...

REQUIRES

Tripped

ACSx is not equal to 0


and FEFx is not equal to Force Normal
and DTMx = 0
or
FEFx = Force Trip
or
SOPT is set to Trip if Bad and any CSx status is Bad.

Trip Initiated - Delayed

ACSx is not equal to 0


and FEFx is not equal to Force Normal and DTMx > 0
or
SOPT is set to Trip if Bad and any CSx status is Bad.

THE

FOLLOWING CONDITIONS

STAx: Trip Initiated - Delayed


When STAxs Trip is Initiated - Delayed the trip condition has occurred, but EFFx continues to be
Normal until DTMx seconds have elapsed.
The timer DTRx (Trip Delay Timer for Effect) decrements from DTMx each scan based on the
algorithm's scan rate. The timer continues to count down even if no causes remain active.
When DTRx reaches zero, STAx changes to Tripped even if there are no active causes. If FEFx
becomes Force Trip while DTRx is still decrementing, STAx changes immediately to Tripped.
Setting FEFx to Force Normal while DTRx is decrementing prevents EFFx from evolving to
Tripped and changes STAx back to Normal.
The following table summarizes the possible changes from Trip Initiated-Delayed.

704

TO TRANSITION ST AX TO...

REQUIRES

Tripped

FEFx = Force Trip


or
DTRx = 0
or
SOPT is set to Trip if Bad and any CSx status is Bad.

Normal

FEFx = Force Normal

THE

FOLLOWING CONDITIONS

REF_1100

8.10 LSCEM
Status Handling
The status of the CSx inputs influences algorithm behavior based on how the SOPT (Status
Options if Bad Input) parameter is configured. The value of SOPT impacts the calculation of
ACSx. The status of the EFFx outputs is based on the status of the associated causes and is not
affected by the value of SOPT.
When SOPT is "Always Use Value" (the default option), Bad status on an associated cause has
no impact on the value of ACSx. However, a sensor failure could cause an immediate shutdown
as a result of the process value changing. Another option for SOPT is "Use Last Good Value if
Bad," which prevents the transition of an associated cause to bad status from initiating a
shutdown, because the value used to calculate ACSx is the value the last time the status was
Good. This allows time for repair. The third option for SOPT is "Trip if Bad." If this option is set, a
Bad status on a cause input trips any associated effect.
The status of the effect outputs is set to Bad if any unmasked associated cause has Bad status
and the effect is not forced to Normal or Tripped; otherwise, it is set to
GoodNonCascade NonSpecific.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

CMASK

F4 - Integer

Selectable

Optional

Cause Mask

LP

FPRMT

X1 - Byte

Optional

Permit Force Effects


0 - False
1 - True

LD

AUX1

G0 - SID

Data Init

Required

Auxiliary Record 1

LC

NOCS

Y0 - Byte

Data Init

Required

Number of Causes

NOEFF

Y2 - Byte

Data Init

Required

Number of Effects

DTM1

R1 - Real

Required

0.0

Trip Delay for Effect 1


(sec)

DTM2

R2 - Real

Required

0.0

Trip Delay for Effect 2


(sec)

DTM3

R3 - Real

Required

0.0

Trip Delay for Effect 3


(sec)

DTM4

R4 - Real

Required

0.0

Trip Delay for Effect 4


(sec)

DTM5

R5 - Real

Required

0.0

Trip Delay for Effect 5


(sec)

DTM6

R6 - Real

Required

0.0

Trip Delay for Effect 6


(sec)

DTM7

R7 - Real

Required

0.0

Trip Delay for Effect 7


(sec)

DTM8

R8 - Real

Required

0.0

Trip Delay for Effect 8


(sec)

DTM9

R9 - Real

Required

0.0

Trip Delay for Effect 9


(sec)

Selectable

REF_1100

Tunable
Tunable
Tunable
Tunable
Tunable
Tunable
Tunable
Tunable
Tunable

705

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

DTM10

S1 - Real

DTM11

S2 - Real

DTM12

S3 - Real

DTM13

S4 - Real

DTM14

S5 - Real

DTM15

S6 - Real

DTM16

S7 - Real

RRS1

X6 - Byte

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

Required

0.0

Trip Delay for Effect 10


(sec)

Required

0.0

Trip Delay for Effect 11


(sec)

Required

0.0

Trip Delay for Effect 12


(sec)

Required

0.0

Trip Delay for Effect 13


(sec)

Required

0.0

Trip Delay for Effect 14


(sec)

Required

0.0

Trip Delay for Effect 15


(sec)

Required

0.0

Trip Delay for Effect 16


(sec)

Tunable

Required

Require Reset for Effect


1
0 - False
1 - True

Tunable

Required

Require Reset for Effect


2
0 - False
1 - True

Tunable

Required

Require Reset for Effect


3
0 - False
1 - True

Tunable

Required

Require Reset for Effect


4
0 - False
1 - True

Tunable

Required

Require Reset for Effect


5
0 - False
1 - True

Tunable

Required

Require Reset for Effect


6
0 - False
1 - True

Tunable

Required

Require Reset for Effect


7
0 - False
1 - True

Tunable

Required

Require Reset for Effect


8
0 - False
1 - True

Tunable
Tunable
Tunable
Tunable
Tunable
Tunable
Tunable

Bit 0

RRS2

X6 - Byte
Bit 1

RRS3

X6 - Byte
Bit 2

RRS4

X6 - Byte
Bit 3

RRS5

X6 - Byte
Bit 4

RRS6

X6 - Byte
Bit 5

RRS7

X6 - Byte
Bit 6

RRS8

X6 - Byte
Bit 7

706

DESCRIPTION

MIN.
POINT
RECORD

REF_1100

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

RRS9

X7 - Byte

Tunable

Required

Require Reset for Effect


9
0 - False
1 - True

Tunable

Required

Require Reset for Effect


10
0 - False
1 - True

Tunable

Required

Require Reset for Effect


11
0 - False
1 - True

Tunable

Required

Require Reset for Effect


12
0 - False
1 - True

Tunable

Required

Require Reset for Effect


13
0 - False
1 - True

Tunable

Required

Require Reset for Effect


14
0 - False
1 - True

Tunable

Required

Require Reset for Effect


15
0 - False
1 - True

Tunable

Required

Require Reset for Effect


16
0 - False
1 - True

Tunable

Required

Force Opt:
MulForceAllowed
0 - No
1 - Yes

Tunable

Required

Force Opt: PermitNotReq


0 - No
1 - Yes

Tunable

Required

Force Opt:
ForcePermitVisible
0 - No
1 - Yes

Tunable

Required

Report Opt: NoRollUp


0 - False
1 - True

Tunable

Required

Report Opt:
NoEventRecords
0 - False
1 - True

Bit 0

RRS10

X7 - Byte
Bit 1

RRS11

X7 - Byte
Bit 2

RRS12

X7 - Byte
Bit 3

RRS13

X7 - Byte
Bit 4

RRS14

X7 - Byte
Bit 5

RRS15

X7 - Byte
Bit 6

RRS16

X7 - Byte
Bit 7

FOP1

X4 - Byte
Bit 0

FOP2

X4 - Byte
Bit 1

FOP3

X4 - Byte
Bit 2

ROP1

X5 - Byte
Bit 0

ROP2

X5 - Byte
Bit 1

REF_1100

707

8.10 LSCEM

708

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

SOPT

X3 - Byte

Tunable

Required

Status Options if Bad


Input
1 - Always Use Value
2 - Use Last Good Value
if Bad
3 - Trip if Bad

CS1

X8 - Byte Bit 0
AUX2:G0 SID

Variable

Required

Input Cause 1

LD

CS2

X8 - Byte Bit 1
AUX2:G1 SID

Variable

Optional

Input Cause 2

LD

CS3

X8 - Byte Bit 2
AUX2:G2 SID

Variable

Optional

Input Cause 3

LD

CS4

X8 - Byte Bit 3
AUX2:G3 SID

Variable

Optional

Input Cause 4

LD

CS5

X8 - Byte Bit 4
AUX2:G4 SID

Variable

Optional

Input Cause 5

LD

CS6

X8 - Byte Bit 5
AUX2:G5 SID

Variable

Optional

Input Cause 6

LD

CS7

X8 - Byte Bit 6
AUX2:G6 SID

Variable

Optional

Input Cause 7

LD

CS8

X8 - Byte Bit 7
AUX2:G7 SID

Variable

Optional

Input Cause 8

LD

CS9

X9 - Byte Bit 0
AUX2:G8 SID

Variable

Optional

Input Cause 9

LD

CS10

X9 - Byte Bit 1
AUX2:G9 SID

Variable

Optional

Input Cause 10

LD

CS11

X9 - Byte Bit 2
AUX2:B0 SID

Variable

Optional

Input Cause 11

LD

REF_1100

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

CS12

X9 - Byte Bit 3
AUX2:B1 SID

Variable

Optional

Input Cause 12

LD

CS13

X9 - Byte Bit 4
AUX2:B2 SID

Variable

Optional

Input Cause 13

LD

CS14

X9 - Byte Bit 5
AUX2:YU SID

Variable

Optional

Input Cause 14

LD

CS15

X9 - Byte Bit 6
AUX2:B4 SID

Variable

Optional

Input Cause 15

LD

CS16

X9 - Byte Bit 7

Variable

Optional

Input Cause 16

LD

AUX2:B5 SID
EFF1

AUX1:YC Integer Bit 0


AUX2:B6 SID

Variable

Required

Output Effect 1

LD

EFF2

AUX1:YC Integer Bit 1


AUX2:B7 SID

Variable

Optional

Output Effect 2

LD

EFF3

AUX1:YC Integer Bit 2


AUX2:B8 SID

Variable

Optional

Output Effect 3

LD

EFF4

AUX1:YC Integer Bit 3


AUX2:B9 SID

Variable

Optional

Output Effect 4

LD

EFF5

AUX1:YC Integer Bit 4


AUX2:C0 SID

Variable

Optional

Output Effect 5

LD

EFF6

AUX1:YC Integer Bit 5


AUX2:C1 SID

Variable

Optional

Output Effect 6

LD

EFF7

AUX1:YC Integer Bit 6


AUX2:C2 SID

Variable

Optional

Output Effect 7

LD

REF_1100

709

8.10 LSCEM

710

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

EFF8

AUX1:YC Integer Bit 7


AUX2:C3 SID

Variable

Optional

Output Effect 8

LD

EFF9

AUX1:YC Integer Bit 8


AUX2:C4 SID

Variable

Optional

Output Effect 9

LD

EFF10

AUX1:YC Integer Bit 9


AUX2:C5 SID

Variable

Optional

Output Effect 10

LD

EFF11

AUX1:YC Integer Bit


10
AUX2:C6 SID

Variable

Optional

Output Effect 11

LD

EFF12

AUX1:YC Integer Bit


11
AUX2:C7 SID

Variable

Optional

Output Effect 12

LD

EFF13

AUX1:YC Integer Bit


12
AUX2:C8 SID

Variable

Optional

Output Effect 13

LD

EFF14

AUX1:YC Integer Bit


13
AUX2:YT SID

Variable

Optional

Output Effect 14

LD

EFF15

AUX1:YC Integer Bit


14
AUX2:D0 SID

Variable

Optional

Output Effect 15

LD

EFF16

AUX1:YC Integer Bit


15
AUX2:YQ SID

Variable

Optional

Output Effect 16

LD

AUX1:B6 InFOT1teger

Variable

Optional

First Causes to Trip


Effect 1

LP

FOT2

AUX1:B7 Integer

Variable

Optional

First Causes to Trip


Effect 2

LP

FOT3

AUX1:B8 Integer

Variable

Optional

First Causes to Trip


Effect 3

LP

FOT4

AUX1:B9 Integer

Variable

Optional

First Causes to Trip


Effect 4

LP

REF_1100

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

FOT5

AUX1:C0 Integer

Variable

FOT6

AUX1:C1 Integer

Variable

FOT7

AUX1:C2 Integer

Variable

FOT8

AUX1:C3 Integer

Variable

FOT9

AUX1:C4 Integer

Variable

FOT10

AUX1:C5 Integer

Variable

FOT11

AUX1:C6 Integer

Variable

FOT12

AUX1:C7 Integer

Variable

FOT13

AUX1:C8 Integer

Variable

FOT14

AUX1:YT Integer

Variable

FOT15

AUX1:D0 Integer

Variable

FOT16

AUX1:YQ Integer

Variable

AUX1:E2 Integer

OVR1

REQUIRED/
OPTIONAL

DEFAULT
VALUE

Optional

First Causes to Trip


Effect 5

LP

Optional

First Causes to Trip


Effect 6

LP

Optional

First Causes to Trip


Effect 7

LP

Optional

First Causes to Trip


Effect 8

LP

Optional

First Causes to Trip


Effect 9

LP

Optional

First Causes to Trip


Effect 10

LP

Optional

First Causes to Trip


Effect 11

LP

Optional

First Causes to Trip


Effect 12

LP

Optional

First Causes to Trip


Effect 13

LP

Optional

First Causes to Trip


Effect 14

LP

Optional

First Causes to Trip


Effect 15

LP

Optional

First Causes to Trip


Effect 16

LP

Variable

Optional

High Priority Override


Effect 1
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 2
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 3
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Bits 0-3

OVR2

AUX1:E2 Integer
Bits 4-7

OVR3

AUX1:E2 Integer
Bits 8-11

REF_1100

DESCRIPTION

MIN.
POINT
RECORD

711

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OVR4

AUX1:E2 Integer

Variable

Optional

High Priority Override


Effect 4
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 5
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated
Causes masked

LA

Variable

Optional

High Priority Override


Effect 6
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 7
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 8
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 9
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 10
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Bits 12-15

OVR5

AUX1:E2 Integer
Bits 16-19

OVR6

AUX1:E2 Integer
Bits 20-23

OVR7

AUX1:E2 Integer
Bits 24-27

OVR8

AUX1:E2 Integer
Bits 28-31

OVR9

AUX1:E3 Integer
Bits 0-3

OVR10

AUX1:E3 Integer
Bits 4-7

712

REF_1100

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OVR11

AUX1:E3 Integer

Variable

Optional

High Priority Override


Effect 11
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 12
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 13
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 14
0 - None
3 - Forced to Trip
2 - Forced to Normal

LA

Bits 8-11

OVR12

AUX1:E3 Integer
Bits 12-15

OVR13

AUX1:E3 Integer
Bits 16-19

OVR14

AUX1:E3 Integer
Bits 20-23

1 - All associated Causes


masked
OVR15

AUX1:E3 Integer

Variable

Optional

High Priority Override


Effect 15
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

High Priority Override


Effect 16
0 - None
3 - Forced to Trip
2 - Forced to Normal
1 - All associated Causes
masked

LA

Variable

Optional

Current State of Effect 1


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Bits 24-27

OVR16

AUX1:E3 Integer
Bits 28-31

STA1

AUX1:YM Integer
Bits 0-3

REF_1100

713

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

STA2

AUX1:YM Integer

Variable

Optional

Current State of Effect 2


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 3


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 4


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 5


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 6


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 7


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Bits 4-7

STA3

AUX1:YM Integer
Bits 8-11

STA4

AUX1:YM Integer
Bits 12-15

STA5

AUX1:YM Integer
Bits 16-19

STA6

AUX1:YM Integer
Bits 20-23

STA7

AUX1:YM Integer
Bits 24-27

714

REF_1100

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

STA8

AUX1:YM Integer

Variable

Optional

Current State of Effect 8


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 9


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 10


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 11


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 12


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 13


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Bits 28-31

STA9

AUX1:YL Integer
Bits 0-3

STA10

AUX1:YL Integer
Bits 4-7

STA11

AUX1:YL Integer
Bits 8-11

STA12

AUX1:YL Integer
Bits 12-15

STA13

AUX1:YL Integer
Bits 16-19

REF_1100

715

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

STA14

AUX1:YL Integer

Variable

Optional

Current State of Effect 14


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 15


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Variable

Optional

Current State of Effect 16


5 - Normal
6 - Trip Initiated-Delayed
1 - Tripped
2 - Waiting for Reset
Permit
3 - Ready to Reset
4 - Waiting for Start
Permit

LA

Bits 20-23

STA15

AUX1:YL Integer
Bits 24-27

STA16

AUX1:YL Integer
Bits 28-31

716

ACS1

AUX1:D2 Integer Bits


0-15

Variable

Optional

Active Causes for Effect


1

LP

ACS2

AUX1:D2 Integer Bits


16-31

Variable

Optional

Active Causes for Effect


2

LP

ACS3

AUX1:YP Integer Bits


0-15

Variable

Optional

Active Causes for Effect


3

LP

ACS4

AUX1:YP Integer Bits


16-31

Variable

Optional

Active Causes for Effect


4

LP

ACS5

AUX1:D4 Integer Bits


0-15

Variable

Optional

Active Causes for Effect


5

LP

ACS6

AUX1:D4 Integer Bits


16-31

Variable

Optional

Active Causes for Effect


6

LP

ACS7

AUX1:D5 Integer Bits


0-15

Variable

Optional

Active Causes for Effect


7

LP

ACS8

AUX1:D5 Integer Bits


16-31

Variable

Optional

Active Causes for Effect


8

LP

REF_1100

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

ACS9

AUX1:D6 Integer Bits


0-15

Variable

Optional

Active Causes for Effect


9

LP

ACS10

AUX1:D6 Integer Bits


16-31

Variable

Optional

Active Causes for Effect


10

LP

ACS11

AUX1:YN Integer Bits


0-15

Variable

Optional

Active Causes for Effect


11

LP

ACS12

AUX1:YN Integer Bits


16-31

Variable

Optional

Active Causes for Effect


12

LP

ACS13

AUX1:D8 Integer Bits


0-15

Variable

Optional

Active Causes for Effect


13

LP

ACS14

AUX1:D8 Integer Bits


16-31

Variable

Optional

Active Causes for Effect


14

LP

ACS15

AUX1:D9 Integer Bits


0-15

Variable

Optional

Active Causes for Effect


15

LP

ACS16

AUX1:D9 Integer Bits


16-31

Variable

Optional

Active Causes for Effect


16

LP

DTR1

AUX1:R1 Real

Variable

Optional

Trip Delay Timer for


Effect 1

LA

DTR2

AUX1:R2 Real

Variable

Optional

Trip Delay Timer for


Effect 2

LA

DTR3

AUX1:R3 Real

Variable

Optional

Trip Delay Timer for


Effect 3

LA

DTR4

AUX1:R4 Real

Variable

Optional

Trip Delay Timer for


Effect 4

LA

DTR5

AUX1:R5 Real

Variable

Optional

Trip Delay Timer for


Effect 5

LA

DTR6

AUX1:R6 Real

Variable

Optional

Trip Delay Timer for


Effect 6

LA

DTR7

AUX1:R7 Real

Variable

Optional

Trip Delay Timer for


Effect 7

LA

DTR8

AUX1:R8 Real

Variable

Optional

Trip Delay Timer for


Effect 8

LA

DTR9

AUX1:R9 Real

Variable

Optional

Trip Delay Timer for


Effect 9

LA

DTR10

AUX1:S1 Real

Variable

Optional

Trip Delay Timer for


Effect 10

LA

DTR11

AUX1:S2 Real

Variable

Optional

Trip Delay Timer for


Effect 11

LA

REF_1100

717

8.10 LSCEM

N AM E

718

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DTR12

AUX1:S3 Real

Variable

DTR13

AUX1:S4 Real

Variable

DTR14

AUX1:S5 Real

Variable

DTR15

AUX1:S6 Real

Variable

DTR16

AUX1:S7 Real

Variable

CALRT

AUX1:E8 Integer

LTRIP

DESCRIPTION

MIN.
POINT
RECORD

Optional

Trip Delay Timer for


Effect 12

LA

Optional

Trip Delay Timer for


Effect 13

LA

Optional

Trip Delay Timer for


Effect 14

LA

Optional

Trip Delay Timer for


Effect 15

LA

Optional

Trip Delay Timer for


Effect 16

LA

Variable

Optional

Alarms Conditions Set by


Block
1 - An Effect is forced to
Trip or Normal
2 - An Effect has a
non-zero FIRST_OUT

X2 - Byte

Variable

Optional

Latent Trip Indicator

RPT1

G2 - Integer

Selectable

Optional

Reset Permit 1
0 - False
1 - True

RPT2

G3 - Integer

Selectable

Optional

Reset Permit 2
0 - False
1 - True

RPT3

G4 - Integer

Selectable

Optional

Reset Permit 3
0 - False
1 - True

RPT4

G5 - Integer

Selectable

Optional

Reset Permit 4
0 - False
1 - True

RPT5

G6 - Integer

Selectable

Optional

Reset Permit 5
0 - False
1 - True

RPT6

G7 - Integer

Selectable

Optional

Reset Permit 6
0 - False
1 - True

RPT7

G8 - Integer

Selectable

Optional

Reset Permit 7
0 - False
1 - True

RPT8

G9 - Integer

Selectable

Optional

Reset Permit 8
0 - False
1 - True

RPT9

B0 - Integer

Selectable

Optional

Reset Permit 9
0 - False
1 - True

RPT10

B1 - Integer

Selectable

Optional

Reset Permit 10
0 - False
1 - True

REF_1100

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

RPT11

B2 - Integer

Selectable

Optional

Reset Permit 11
0 - False
1 - True

RPT12

YU - Integer

Selectable

Optional

Reset Permit 12
0 - False
1 - True

RPT13

B4 - Integer

Selectable

Optional

Reset Permit 13
0 - False
1 - True

RPT14

B5 - Integer

Selectable

Optional

Reset Permit 14
0 - False
1 - True

RPT15

B6 - Integer

Selectable

Optional

Reset Permit 15
0 - False
1 - True

RPT16

B7 - Integer

Selectable

Optional

Reset Permit 16
0 - False
1 - True

SPT1

D8 - Integer

Selectable

Optional

Start Permit 1
0 - False
1 - True

LD

SPT2

D9 - Integer

Selectable

Optional

Start Permit 2
0 - False
1 - True

LD

SPT3

YM - Integer

Selectable

Optional

Start Permit 3
0 - False
1 - True

LD

SPT4

YL - Integer

Selectable

Optional

Start Permit 4
0 - False
1 - True

LD

SPT5

E2 - Integer

Selectable

Optional

Start Permit 5
0 - False
1 - True

LD

SPT6

E3 - Integer

Selectable

Optional

Start Permit 6
0 - False
1 - True

LD

SPT7

E4 - Integer

Selectable

Optional

Start Permit 7
0 - False
1 - True

LD

SPT8

YC - Integer

Selectable

Optional

Start Permit 8
0 - False
1 - True

LD

SPT9

Y9 - Integer

Selectable

Optional

Start Permit 9
0 - False
1 - True

LD

SPT10

E7 - Integer

Selectable

Optional

Start Permit 10
0 - False
1 - True

LD

REF_1100

MIN.
POINT
RECORD

719

8.10 LSCEM

720

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

SPT11

E8 - Integer

Selectable

Optional

Start Permit 11
0 - False
1 - True

LD

SPT12

Y8 - Integer

Selectable

Optional

Start Permit 12
0 - False
1 - True

LD

SPT13

Y7 - Integer

Selectable

Optional

Start Permit 13
0 - False
1 - True

LD

SPT14

Y6 - Integer

Selectable

Optional

Start Permit 14
0 - False
1 - True

LD

SPT15

XY - Integer

Selectable

Optional

Start Permit 15
0 - False
1 - True

LD

SPT16

XW - Integer

Selectable

Optional

Start Permit 16
0 - False
1 - True

LD

MTR1

AUX1:G0 Integer

Data Init

Required

CEM Matrix Column 1;


Parameter value visible
in LC record only

MTR2

AUX1:G1 Integer

Data Init

Required

CEM Matrix Column 2;


Parameter value visible
in LC record only

MTR3

AUX1:G2 Integer

Data Init

Required

CEM Matrix Column 3;


Parameter value visible
in LC record only

MTR4

AUX1:G3 Integer

Data Init

Required

CEM Matrix Column 4;


Parameter value visible
in LC record only

MTR5

AUX1:G4 Integer

Data Init

Required

CEM Matrix Column 5;


Parameter value visible
in LC record only

MTR6

AUX1:G5 Integer

Data Init

Required

CEM Matrix Column 6;


Parameter value visible
in LC record only

MTR7

AUX1:G6 Integer

Data Init

Required

CEM Matrix Column 7;


Parameter value visible
in LC record only

MTR8

AUX1:G7 Integer

Data Init

Required

CEM Matrix Column 8;


Parameter value visible
in LC record only

MTR9

AUX1:G8 Integer

Data Init

Required

CEM Matrix Column 9;


Parameter value visible
in LC record only

MTR10

AUX1:G9 Integer

Data Init

Required

CEM Matrix Column 10;


Parameter value visible
in LC record only

REF_1100

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

MTR11

AUX1:B0 Integer

Data Init

Required

CEM Matrix Column 11;


Parameter value visible
in LC record only

MTR12

AUX1:B1 Integer

Data Init

Required

CEM Matrix Column 12;


Parameter value visible
in LC record only

MTR13

AUX1:B2 Integer

Data Init

Required

CEM Matrix Column 13;


Parameter value visible
in LC record only

MTR14

AUX1:YU Integer

Data Init

Required

CEM Matrix Column 14;


Parameter value visible
in LC record only

MTR15

AUX1:B4 Integer

Data Init

Required

CEM Matrix Column 15;


Parameter value visible
in LC record only

MTR16

AUX1:B5 Integer

Data Init

Required

CEM Matrix Column 16;


Parameter value visible
in LC record only

RST1

B8 - Integer

Selectable

Optional

Reset 1
0 - False
1 - True

LD

RST2

B9 - Integer

Selectable

Optional

Reset 2
0 - False
1 - True

LD

RST3

C0 - Integer

Selectable

Optional

Reset 3
0 - False
1 - True

LD

RST4

C1 - Integer

Selectable

Optional

Reset 4
0 - False
1 - True

LD

RST5

C2 - Integer

Selectable

Optional

Reset 5
0 - False
1 - True

LD

RST6

C3 - Integer

Selectable

Optional

Reset 6
0 - False
1 - True

LD

RST7

C4 - Integer

Selectable

Optional

Reset 7
0 - False
1 - True

LD

RST8

C5 - Integer

Selectable

Optional

Reset 8
0 - False
1 - True

LD

RST9

C6 - Integer

Selectable

Optional

Reset 9
0 - False
1 - True

LD

RST10

C7 - Integer

Selectable

Optional

Reset 10
0 - False
1 - True

LD

REF_1100

721

8.10 LSCEM

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

RST11

C8 - Integer

Selectable

Optional

Reset 11
0 - False
1 - True

LD

RST12

YT - Integer

Selectable

Optional

Reset 12
0 - False
1 - True

LD

RST13

D0 - Integer

Selectable

Optional

Reset 13
0 - False
1 - True

LD

RST14

YQ - Integer

Selectable

Optional

Reset 14
0 - False
1 - True

LD

RST15

D2 - Integer

Selectable

Optional

Reset 15
0 - False
1 - True

LD

RST16

YP - Integer

Selectable

Optional

Reset 16
0 - False
1 - True

LD

AUX2

G1 - SID

Data Init

Required

Auxiliary Record 2

LC

CALRT
The following table shows the alerts that can appear for an LSCEM algorithm, an explanation of
each alert, and the bit position of each alert.

722

BIT V ALUE

EXPLAN ATION

BIT POSITION

An Effect is forced to Trip or Normal.

Active when any effect is being forced, that is, any


FEFx parameter is Force Trip or Force Normal.

An Effect has a non-zero FOT (First


Causes to Trip Effect).

Active when there is a non-zero FOTx.

REF_1100

8.11 LSCMP

8.11 LSCMP
Description
The Logic Solver Comparator (LSCMP) algorithm compares two values (DSCV and CMPV1 Input and First Comparative Value respectively) and sets a Boolean output for each of the
following comparisons: LT (Less Than), GT (Greater Than), EQ (Equal To), NEQ (Not Equal).
Additionally, the LSCMP algorithm compares the DSCV against the range defined by CMPV2 and
CMPV1 to determine the Boolean output, INRGE (In-Range Comparison Output).
Functional Symbol

Algorithm Execution
The LSCMP algorithm has two algorithm calculations; the comparison calculation and the status
propagation.
Comparison Calculation
The LSCMP algorithm compares the DSCV input with the CMPV1 input, the primary comparison
value. Based on the relationship between DSCV and CMPV1, the LT, GT, EQ, and NEQ outputs
are set to 0 (False) or 1 (True). A secondary comparison determines if DSCV is within the range
of CMPV1 to CMPV2. If DSCV is within this range, then the INRGE output is set to 1 (True),
otherwise 0 (False).
Status Propagation
Bad status on any of the input values propagates to the output. If the DSCV has a bad status, all
outputs reflect this bad status. If DSCV has good status but CMPV1 or CMPV2 has bad status,
then the outputs associated with the bad input are also set to bad. The status calculation is totally
independent of the comparison calculations.
The following table shows an example of the LSCMP algorithm outputs based on different input
values.
Sample LSCMP algorithm outputs
P ARAM ETER

EX AM PLE 1

EX AM PLE 2

EX AM PLE 3

DSCV

2.25

-233.0

37.5

CMPV1

15.0

-200.0

37.5

CMPV2

1.0

0.0

10.0

LT

REF_1100

723

8.11 LSCMP

P ARAM ETER

EX AM PLE 1

EX AM PLE 2

EX AM PLE 3

GT

EQ

NEQ

INRGE

Status Handling
Status of each output is set to the worst status of the inputs for each output, except that Uncertain
status is treated as Good for determining status.
For example, if the status on CMPV1 is bad, the statuses on LT, GT, EQ, and NEQ are all set to
BAD. Also, if the status on CMPV1 or CMPV2 is BAD, then the status on INRGE is BAD.
Algorithm Definitions

724

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DSCV

Variable

Required

Input

LA

CMPV1

T1 - Real

Variable

Optional

First Comparative Value

LA

CMPV2

T2 - Real

Variable

Optional

Second Comparative
Value

LA

EQ

Variable

Optional

Equal Comparison
Output

LD

GT

Variable

Optional

Greater Than
Comparison Output

LD

INRGE

Variable

Optional

In-Range Comparison
Output

LD

LT

Variable

Optional

Less Than Comparison


Output

LD

NEQ

Variable

Optional

Not Equal Comparison


Output

LD

REF_1100

8.12 LSDI

8.12 LSDI
Description
The Logic Solver Digital Input (LSDI) algorithm accesses a single digital input from a two-state
field device and makes the processed physical input available to other algorithms. You can
configure inversion on the input value.
The LSDI algorithm supports signal status propagation.
The input can come from a local input channel on the Logic Solver or from input channel data
sent across the SIS Net from another Logic Solver.
Functional Symbol

Algorithm Execution
The LSDI algorithm accesses a single digital input from a two-state field device and makes the
processed physical input available to other algorithms. You can configure inversion on the input
value.
After calculation, the process variable (PVD) is copied to the output (OUT).
I/O Selection
When you configure the Digital Input algorithm, you select the input channel associated with the
digital measurement by configuring the Ovation point. You select the point and the parameter the
Digital Input algorithm accesses on that channel. Note that points can be specified for channels
directly attached to this Logic Solver or channels attached to Logic Solvers that reside in the
same SIS Data Server.
When you select Digital Input Channel for the channel type, the only selectable channel
parameter is:
FVALD The last digital value with status reported by the channel.
Field Value Processing
You can select the Invert input option (IOP1) to process FVALD:

Invert

When Invert is selected a NOT is performed on FVALD and the resulting value is copied to PVD
and OUT.

REF_1100

725

8.12 LSDI
Status Handling
Under normal conditions, a GOOD status is passed through to OUT.
When the status becomes Bad on the input channel, FVALD, PVD, and OUT are set to Bad
status and the BLERR parameter shows Bad PV. Status becomes Bad when line fault detection is
enabled and a line fault has been detected.
Algorithm Definitions

726

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OUT

X5 - Byte

Variable

Required

Digital Output with Status

LD

PVD

X6 - Byte

Variable

Optional

Digital Output Value Only

LD

FVALD

X7 - Byte

Variable

Optional

Hardware Channel Value

LD

BLERR

G1 - Integer

Variable

Optional

Block Error Status


256 - Input Failure/Bad
PV

LX

IOP1

G0 - Integer
Bit 0

Data
Init.

Required

IO Opt: Invert Input.


This parameter is copied
from the channel
configuration and can't be
changed in algorithm
configuration.
0 - No
1 - Yes

REF_1100

8.13 LSDO

8.13 LSDO
Description
The LSDO algorithm drives a Logic Solver output channel (for example, a Digital Output channel)
to manipulate a solenoid or other final element. In a typical application, the algorithm's input is
from an output of a Logic Solver Cause and Effect Matrix (LSCEM) algorithm.
Functional Overview
The following algorithm diagram shows a simple application that uses the LSDO algorithm to
operate a solenoid valve.

Figure 9: Simple LSDO application diagram

REF_1100

727

8.13 LSDO
In this example, the input to the Logic Solver Digital Output algorithm is an effect output from a
Cause and Effect Matrix algorithm. During normal operation the effect output's value is 1. When
the inputs to the Cause and Effect Matrix algorithm indicate a hazardous condition exists, the
effect output is set to 0 (zero). This, in turn, trips the output of the Digital Output algorithm, driving
the associated Logic Solver channel to close the valve.
The Logic Solver Digital Input algorithm is wired to a limit switch or other indicator to confirm that
the valve closes. If the valve does not close, the PV input to the Digital Output algorithm from the
Digital Input algorithm eventually sets a fault state in the Digital Output algorithm.
This simple example does not illustrate a number of configurable functions the algorithm supports:

Options for detecting a fault state.

Timers to delay sending a signal to close the valve or set the fault state.

Requiring permission before resetting the algorithm to normal operation after being tripped.

Functional Symbol

Algorithm Execution
Because the Logic Solver is a De-energized to Trip environment the normal operating value of the
output is On (1) and the tripped value is Off (0).
To use the LSDO algorithm in a safety shutdown application, assign IOOUT to a Logic Solver
Digital Output channel connected to a valve controller. Typically, the CASND input of the LSDO
algorithm would be wired from an EFFECT output of an upstream LSCEM algorithm. Default
LSDO algorithm behavior passes the value of CASND to OUTD.
You can wire feedback from the final element to the RDBK input parameter of the LSDO
algorithm. This input would typically be wired from an LSDI algorithm representing a limit switch.
The RDBK value becomes the PVD of the LSDO algorithm. If the configurable time CTTM expires
before PVD confirms the off state, the DALRT Failed to confirm after trip command becomes
True. If RDBK is not wired, PVD has the same value as OUTD, so confirmation is immediate.
Fault State Detection
The LSDO algorithm enters a fault state when any of three conditions is detected and a
corresponding option has been selected for the detected condition. When the fault state is active,
the algorithm forces OUTD to Off, sets the Fault State Active bit in BLERR, and sets FSTAT to
Active. The FOPx options are selected by default and include:

Enable detection based on CASND status.


If the status of CASND becomes Bad, FTMR begins incrementing from 0.0. If the status
remains Bad for FTIM seconds, OUTD is forced to Off (0). FTMR continues to increment
while the status of CASND is Bad. The fault state condition clears immediately when the
status transitions away from Bad.

728

REF_1100

8.13 LSDO

Enable detection based on output channel status.


OUTD is forced to Off if the Logic Solver detects a short or open in the field wiring (status of
OUTD is Bad SensorFailure LowLimited) while OUTD is being commanded On. The LSDO
algorithm reacts to this status by forcing the output Off to track the state of the final element.
Note that FTIM has no effect when the fault state is a result of OUTD status.

Note: If you use this option, you must also require a reset, either in this algorithm or in an
upstream LSCEM algorithm, because an active fault state condition clears when the algorithm
drives the output Off. Requiring a reset prevents the algorithm from driving the output back to
On during the next scan.

Enable detection based on PVD value.


OUTD is forced to 0 based on feedback from the final element wired into RDBK. The final
element is confirmed Off (PVD is 0) while OUTD is commanded On. Use this option to force
the output Off if a failure of the final element is not detected by a Logic Solver diagnostic.
RDBK should be wired when using this option; otherwise, PVD has the same value as OUTD.
Note that FTIM has no effect when the fault state is a result of the value of PVD.

Note: If you use this option, you must also require a reset, either in this algorithm or in an
upstream LSCEM algorithm, because an active fault state condition clears when the algorithm
drives the output Off. Requiring a reset prevents the algorithm from driving the output back to
On during the next scan.
FTMR is a writeable parameter. Be advised that writing to FTMR can cause the state of OUTD to
change depending on the value written.
Determining the Value of OUTD and Writing the Output Channel Value
The following figure is the state transition diagram for OSTAT. When OSTAT is Off or Off - Ready
to Reset, the value of OUTD is Off (0) and the Logic Solver channel defined by IOOUT is written
to Off. When OSTAT is On, OUTD is On (1) and IOOUT is written to On.

Figure 10: OSTAT Transition diagram

REF_1100

729

8.13 LSDO

Note: To require a manual reset to transition OUTD to On (1), Emerson recommends that you
configure this in an upstream LSCEM algorithm, not the LSDO algorithm. The LSCEM algorithm
has a number of features that enhance the reset logic. The ability to require resets in the LSDO
algorithm (using the RQRST parameter) is provided if you do not have voter and LSCEM
algorithms to implement shutdown logic.
If you set the LSDO algorithm's RQRST parameter to True, any transition of OUTD to Off (0)
causes OUTD to remain Off until all of the following conditions are met:

CASND equals 1.

FSTAT is not active.

RST is True.

RST should be changed to True using a button on a process display. The algorithm changes RST
back to False. Do not expose RST as an input on the algorithm and wire to it. If you need to reset
an LSDO algorithm from SIS module logic, use an LSCALC algorithm to do a conditional
assignment to RST.
When OSTAT is Off or Off - Ready to Reset, the value of OUTD is 0 and the channel on this
Logic Solver defined by IOOUT is written to Off.
When OSTAT is On, OUTD is 1 and the channel is written to On.
Determining the Value of PVD
PVD normally gets its value from RDBK. If the status of RDBK is bad quality, PVD has the same
value as OUTD. Use the invert input option in the upstream LSDI algorithm if you are using a
closed limit switch.
Determining the Value of DALRT
The DALRT parameter reports two alarm conditions set by the algorithm (inactive = 0, active = 1):

Failed to confirm after trip command.


The device fails to confirm after being commanded to trip. On any transition of OUTD to Off,
the algorithm starts a confirmation timer. If the value of PVD is not 0 within CTTM seconds,
the alert Failed to confirm after trip command becomes True. The alert clears when OUTD
transitions to On (1).

Confirm lost while commanded On.


The device confirms Off while it is being commanded On. When OSTAT is On and PVD has
transitioned to 1, the condition is detected if PVD becomes 0, for example if the device has a
failure that causes it to confirm in the Off state. The alert clears on the next transition of
OSTAT to On.

730

REF_1100

8.13 LSDO
Event Generation
The LSDO algorithm generates an event record when any of the following conditions become
active and the ROPx option "Event records are not generated" is not selected:

The algorithm has set DALRT Failed to confirm following a command to trip. The event record
shows the path to the LSDO algorithm and the Failed to confirm after trip command text string
along with the time of occurrence.

The algorithm has set DALRT Confirm lost while commanded On. The event record shows
the path to the LSDO algorithm and the text Confirm lost while commanded On along with the
time of occurrence.

The command to trip was successful and RDBK has been wired. The event record shows the
path to the LSDO algorithm and the text Successful confirmation following a command to trip
along with the time of occurrence.

Alarm Detection
You can configure alarms to reference bits in DALRT and BLERR. You can reference these alarm
conditions upstream of the LSDO algorithm when required.
The Failed to confirm after trip command alert in DALRT propagates to the module parameter
SIF_ERRORS when the ROPx option "Alarm conditions do not roll up to module level" is not
selected.
Status Handling
Status is considered in the detection of the fault state.
The status of OUTD is normally GoodNonCascade NonSpecific NotLimited. If the fault state is
active, the status is set to GoodCascade FaultStateActive NotLimited. If the status on the output
channel is Bad, the status of OUTD is set to Bad. Bad SensorFailure LowLimited indicates an
open or short circuit has been detected. Bad DeviceFailure NotLimited indicates a channel error.
The status of PVD is that of RDBK unless its status is Bad NotConnected, in which case the
status of PVD is the same as OUTD.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

CASND

Variable

Required

Input

LD

RDBK

Optional

Actual Element Feedback


Input

LD

Data Init

IOOUT

NO_LC_
FIELD ASCII Size
50

Required

CHxx

Digital IO Output Channel

PVD

Variable

Optional

Readback Value

LD

OSTAT

Variable

Optional

Output Current State

LA

CTTMR

Variable

Optional

Feedback Confirm Timer

LA

REF_1100

Variable

731

8.13 LSDO

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
REC.

FTMRH

Variable

Optional

Fault Detection Timer (hrs)

LA

Block Error Status. The


choices are:
128 - Output Failure
256 - Input Failure/Bad PV
1024 - Fault State is Active

LX

Optional

Fault State Status


0 - Not Active
1 - Active

LA

Optional

Alarm Conditions Set by


Block

LX

Variable
BLERR

Optional

Variable

732

FSTAT

DALRT

OUTD

X9 - Byte

Alg Init

Optional

Output Value

FOP1

G0 Integer
(Bits 0-0)

Tunable

Optional

FState Opt: Undefined Opt 1


0=No
1=Yes

FOP2

G0 Integer
(Bits 1-1)

Tunable

Required

FState Opt:
FaultDetectbyCASND
0=No
1=Yes

FOP3

G0 Integer
(Bits 2-2)

Tunable

Required

FState Opt:
FaultDetectbyOUTD
0=No
1=Yes

FOP4

G0 Integer
(Bits 3-3)

Tunable

Required

FState Opt:
FaultDetectbyPVD
0=No
1=Yes

FTIM

R4 - Real

Tunable

Required

300

Fault Detection Delay Time


(sec)

FTMR

R5 - Real

Tunable

Required

Fault Detection Timer (sec)

CTTM

R1 - Real

Tunable

Required

Output Feedback Time (sec)

ROP1

G1 Integer
(Bits 0-0)

Tunable

Required

Report Opt: NoRollUp


0=False
1=True

ROP2

G1 Integer
(Bits 1-1)

Tunable

Required

Report Opt:NoEventRecords
0=False
1=True

RQRST

X7 - Byte

Tunable

Required

Require Reset
0=False
1=True

RST

X8 - Byte

Tunable

Required

Reset
0=False
1=True

Variable

REF_1100

8.13 LSDO
DALRT
The following table shows the alerts that can appear for an LSDO algorithm and the bit position of
each alert.
BIT V ALUE

BIT POSITION

Failed to confirm after trip command.

Confirm lost while commanded On.

REF_1100

733

8.14 LSDVC

8.14 LSDVC
Description
The Logic Solver Digital Valve Controller (LSDVC) algorithm provides an interface to the Fisher
Controls DVC6000ESD digital valve controller for safety shutdown applications. The algorithm's
output is assigned to a HART Two-state Output Channel on a Logic Solver. In a typical
application the algorithm's input is from an output of a Cause And Effect Matrix (LSCEM)
algorithm.
Functional Overview
The LSDVC algorithm contains all of the parameters found in the Digital Output (LSDO) algorithm.
In addition, the LSDVC algorithm performs automatic and manual partial stroke testing on the
associated valve.
The following algorithm diagram shows a simple application that uses the LSDVC algorithm to
operate a DVC6000ESD digital valve controller.

Figure 11: Simple LSDVC application diagram

734

REF_1100

8.14 LSDVC
In this example, the input to the Digital Valve Controller algorithm is an effect output from a Cause
and Effect Matrix algorithm. During normal operation, the effect output's value is 1. When the
inputs to the Cause and Effect Matrix algorithm indicate a hazardous condition exists, the effect
output is set to 0 (zero). This, in turn, trips the output of the Digital Valve Controller algorithm,
driving the associated Logic Solver HART Two-state Output Channel to the configured off-current
value, which closes the valve.
The Digital Input algorithm is wired to a limit switch or other indicator to confirm that the valve
closes. If the valve does not close, the PV input to the Digital Valve Controller algorithm from the
Digital Input algorithm eventually sets a fault state in the Digital Valve Controller algorithm.
This simple example does not illustrate a number of configurable functions the algorithm supports:

Options for detecting a fault state.

Timers to delay sending a signal to close the valve or set the fault state.

Requiring permission before resetting the algorithm to normal operation after being tripped.

A number of features that support partial stroke testing.

Functional Symbol

Algorithm Execution
Because the Logic Solver is a De-energized to Trip environment, the normal operating value of
the output is On (1) and the tripped value is Off (0).
To use the LSDVC algorithm in a safety shutdown application, assign IOOUT to a Logic Solver
HART Two-state Output Channel connected to a Fisher Controls DVC6000ESD digital valve
controller. Typically, the CASND input of the LSDVC algorithm would be wired from an EFFECT
output of an upstream LSCEM algorithm. Default LSDVC algorithm behavior passes the value of
CASND to OUT.
You can wire feedback from the DVC6000ESD to the RDBK input parameter of the LSDVC
algorithm. This input would typically be wired from an LSDI algorithm representing a limit switch.
The RDBK value becomes the PVD of the LSDVC algorithm. If the configurable time CTTM
expires before PVD confirms the off state, the "DALRT Failed to confirm after trip" command
becomes True. If RDBK is not wired, PVD has the same value as OUT, so confirmation is
immediate.

REF_1100

735

8.14 LSDVC

Fault State Detection


The LSDVC algorithm enters a fault state when any of three conditions is detected and a
corresponding option has been selected for the detected condition. When the fault state is active,
the algorithm forces OUT to Off, sets the Fault State Active bit in BLERR, and sets FSTAT to
Active. The FOPx options are selected by default and include:

Enable detection based on CASND status.


If the status of CASND becomes Bad, FTMR begins incrementing from 0.0. If the status
remains Bad for FTIM seconds, OUT is forced to 0 (zero). FTMR continues to increment while
the status of CASND is Bad. The fault state condition clears immediately when the status
transitions away from Bad.

Enable detection based on output channel status.


OUT is forced to Off if the Logic Solver detects a short or open in the field wiring (status of
OUT is bad quality) while OUT is being commanded On. The LSDVC algorithm reacts to this
status by forcing the output Off to track the state of the DVC6000ESD. Note that FTIM has no
effect when the fault state is a result of OUT status.

Note: If you use this option you must also require a reset, either in this algorithm or in an
upstream LSCEM algorithm, because an active fault state condition clears when the algorithm
drives the output Off. Requiring a reset prevents the algorithm from driving the output back to
On during the next scan.

Enable detection based on PVD value.


OUT is forced to 0 based on feedback from the final element wired into RDBK. The final
element is confirmed Off (PVD is 0) while OUT is commanded On. Use this option to force the
output off if a failure of the final element is not detected by a Logic Solver diagnostic. RDBK
should be wired when using this option; otherwise, PVD has the same value as OUT. Note
that FTIM has no effect when the fault state is a result of the value of PVD.

Note: If you use this option you must also require a reset, either in this algorithm or in an
upstream LSCEM algorithm, because an active fault state condition clears when the algorithm
drives the output Off. Requiring a reset prevents the algorithm from driving the output back to
On during the next scan.
FTMR is a writeable parameter. Be advised that writing to FTMR can cause the state of OUT to
change depending on the value written.

736

REF_1100

8.14 LSDVC
Determining the value of OUT and writing the output channel value
The following figure is the state transition diagram for OSTAT. When OSTAT is Off or Off - Ready
to Reset, the value of OUT is Off (0) and the Logic Solver channel defined by IOOUT is written to
Off. When OSTAT is On, OUT is On and IOOUT is written to On.

Figure 12: OSTAT Transition diagram


Note: To require a manual reset to transition OUT to On (1), Emerson recommends that you
configure this in an upstream LSCEM algorithm, not the LSDVC algorithm. The LSCEM
algorithm has a number of features that enhance the reset logic. The ability to require resets in
the LSDVC algorithm (using the RQRST parameter) is provided if you do not have voter and
LSCEM algorithms to implement shutdown logic.
If you set the LSDVC algorithm's RQRST parameter to True, any transition of OUT to Off (0)
causes OUT to remain Off until all of the following conditions are met:

CASND equals 1.

FSTAT is not active.

RST is True.

RST should be changed to True using a button on a process display. The algorithm changes RST
back to False. Do not expose RST as an input on the algorithm and wire to it. If you need to reset
an LSDVC algorithm from SIS module logic, use an LSCALC algorithm to do a conditional
assignment to RST.
When RQRST is False, OUT's value is based on the value of CASND unless the fault state is
active.

REF_1100

737

8.14 LSDVC
When OSTAT is Off or Off - Ready to Reset, the value of OUT is Off and the channel on this
Logic Solver defined by IOOUT is written to Off. This results in the configured OFCUR value (0 or
4 mA) being sent to the Logic Solver's HART Two-state Output Channel defined in IOOUT.
When OSTAT is On, OUT is On and the channel is written to On. This results in 20 mA being sent
to the Logic Solver's HART Two-state Output Channel.
Determining the value of PVD
PVD normally gets its value from RDBK. If the status of RDBK is BadNotConnected, PVD has the
same value as OUT. Use the invert input option in the upstream LSDI algorithm if you are using a
closed limit switch.
Determining the value of DALRT
The DALRT parameter reports two alarm conditions set by the algorithm (inactive = 0, active = 1):

Failed to confirm after trip command.


The device fails to confirm after being commanded to trip. On any transition of OUT to Off, the
algorithm starts a confirmation timer. If the value of PVD is not 0 within CTTM seconds, the
alert Failed to confirm after trip command becomes True. The alert clears when OUT
transitions to On (1).

Confirm lost while commanded On.


The device confirms Off while it is being commanded On. When OSTAT is On and PVD has
transitioned to 1, the condition is detected if PVD becomes 0, for example if the device has a
failure that causes it to confirm in the Off state. The alert clears on the next transition of
OSTAT to On.

738

REF_1100

8.14 LSDVC
Partial stroke testing
Perform partial stroke testing of a DVC6000ESD in one of the following ways:

Initiate a test from a workstation using the Advanced Tuning window on Signal Diagrams by a
SIS write to the PSSRT parameter in the LSDVC algorithm.

Use a Calc algorithm in an SIS module to initiate a test by conditionally writing the PSSRT
parameter in the LSDVC algorithm.

Configure the LSDVC algorithm to periodically initiate the test based on the algorithm's PSPT
parameter.

Note: Do not attempt to initiate consecutive partial stroke tests from the logic unless you verify
that each test completes before initiating the next. Otherwise, the first test succeeds and
subsequent tests fail or are denied until the first test completes.
The partial stroke testing facility in the LSDVC algorithm is in one of three states as indicated in
the PST_STATE parameter, whose state transition diagram is shown in the following figure.

Figure 13: PSSTA Transition diagram

REF_1100

739

8.14 LSDVC
The partial stroke testing state is Idle when the algorithm has not been configured to initiate tests
periodically, that is, PSPT is zero hours, and the algorithm is waiting for a manual test to be
initiated by PSSRT.
The state is Armed when PSPT is greater than zero and PSNTR is timing down. A test starts
when PSNTR reaches zero (times out), or if prior to timing out, a manual test is started.
The state transitions to PST in Progress when a test is started from Idle or Armed. The algorithm
sends a request to the IO subsystem to initiate a partial stroke test. The algorithm generates an
event based on whether the test was successful, failed, or denied. The state then transitions to
Armed or Idle based on the value of PSPT.
A partial stroke test can fail for a number of reasons:

The DVC6000ESD returns a test failed response.

The Logic Solver I/O processor is not in the Ready state when the algorithm requests a test.

The Logic Solver I/O processor goes to the NoComm state after the test is initiated.

The Logic Solver control subsystem does not get a response from the Logic Solver I/O
processor for 180 seconds while PSSTA is PST In Progress.

When a partial stroke test fails, the algorithm sets the PSALR Test failed. The alert remains set
until the next time PSSTA is PST in Progress.
The partial stroke test can be denied by the DVC6000ESD when it is in some modes of operation;
for example, it is being calibrated or a test has been initiated from Valve link, or the connected
HART device does not support partial stroke testing. When a test is denied, the algorithm sets the
PSALR Test Denied, where it remains set until the next time PSSTA is PST in Progress.
When PSSTA is Armed or Idle, the algorithm compares the elapsed time since the last successful
test (PSSNT) to the maximum allowed time between successful tests (PSRIN) and sets the
PSALR No successful test in the required interval if the time has been exceeded (unless the
required interval is zero). PSSNT is set to zero after a test succeeds. PSSNT does not begin
incrementing after an initial load of the Logic Solver until a successful test has occurred.
A transition can occur between Idle and Armed when PSPT is written in runtime, or on the first
scan after a load if PSPT has changed. When the state is Idle, changing PSPT to a value greater
than zero causes the state to change to Armed and PSNTR to be initialized. When the state is
Armed, writing PSPT to zero changes the state to Idle. When Armed, a greater than zero write to
PSPT changes PSNTR to the value written to PSPT if that value is less than the current value of
PSNTR. PSNTR is decremented when the state is Armed.
When a load of the Logic Solver occurs where there is an existing configuration running, the
current state and timer values are copied from running LSDVC algorithms to retain the values.
Event Generation
The LSDVC algorithm generates an event record when any of the following conditions become
active and the ROPx option "Event records are not generated" is not selected:

740

The algorithm has set DALRT Failed to confirm following a command to trip. The event record
shows the path to the LSDVC algorithm and the "Failed to confirm after trip" command text
string along with the time of occurrence.

The algorithm has set DALRT to "Confirm lost while commanded On." The event record
shows the path to the LSDVC algorithm and the text "Confirm lost while commanded On"
along with the time of occurrence.

REF_1100

8.14 LSDVC

The command to trip was successful and RDBK has been wired. The event record shows the
path to the LSDVC algorithm and the text "Successful confirmation following a command to
trip" along with the time of occurrence.

The algorithm has set PSALR Test failed. The event record shows the path to the LSDVC
algorithm and the text string "Partial stroke test failed" along with the time of occurrence.

The algorithm has set PSALR Test denied. The event record shows the path to the LSDVC
algorithm and the text string "Partial stroke test denied" along with the time of occurrence.

The algorithm has set PSALR No successful test in the required interval. The event record
shows the path to the LSDVC algorithm and the text string "Partial stroke test past due" along
with the time of occurrence.

The partial stroke test is successful. The event record shows the path to the LSDVC algorithm
and the text "Successful partial stroke test" along with the time of occurrence.

Status Handling
Status is considered in the detection of the fault state.
The status of OUT is normally GoodNonCascade NonSpecific NotLimited. If the fault state is
active, the status is set to GoodCascade FaultStateActive NotLimited. If the status on the output
channel is Bad, the status of OUT is set to Bad. Bad SensorFailure LowLimited indicates an open
or short circuit has been detected. Bad DeviceFailure NotLimited indicates a channel error.
The status of PVD is that of RDBK unless its status is Bad NotConnected, in which case the
status of PVD is the same as OUT.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

CASND

X1 - Byte

Variable

Required

Input

LD

RDBK

X2 - Byte

Variable

Optional

Actual Element Feedback


Input

LD

IOOUT

Data Init.

Required

CHxx

HART 2-State I/O Output


Channel

PVD

X3 - Byte

Variable

Optional

Readback Value

LD

OSTAT

Y2 - Byte

Variable

Optional

Output Current State


0 = Off
1 = Off - Ready to Reset
2 = On

LA

BLERR

G2 Integer

Variable

Optional

Block Error Status


128 = Output Failure
256 = Input Failure/ Bad PV
1024 = Fault State is Active

LX

FSTAT

X5 - Byte

Variable

Fault State Status


0 = Not Active
1 = Active

LA

REF_1100

Optional

741

8.14 LSDVC

742

N AM E

LC ALG.
RECORD
FIELD

TYPE

DALRT

G3 Integer

Variable

CTTMR

R2 - Real

FTMRH

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Optional

Alarm Conditions Set by


Block
1 = Failed to Confirm after trip
command
2 = Confirm lost while
commanded On

LX

Variable

Optional

Feedback Confirm Timer

LA

R3 - Real

Variable

Optional

Fault Detection Timer (Hours)

LA

PSSTA

Y3 - Byte

Variable

Optional

PST State

LA

PSALR

G4 Integer

Variable

Optional

PST Alerts

LX

PSNTR

S1 - Real

Variable

Optional

Periodic PST Timer

LA

PSSNT

S2 - Real

Variable

Optional

Last Success PST Elapsed


Time

LA

OUT

X9 - Byte

Alg. Init.

Optional

Output Value

CTTM

R1 - Real

Tunable

Required

Output Feedback Time (sec)

FOP2

G0 Integer
Bits 1

Tunable

Required

FState Opt:
FaultDetectbyCASND
0=No
1=Yes

FOP3

G0 Integer
Bits 2

Tunable

Required

FState Opt:
FaultDetectbyOUTD
0=No
1=Yes

FOP4

G0 Integer
Bits 3

Tunable

Required

FState Opt:
FaultDetectbyPVD
0=No
1=Yes

FTIM

R4 - Real

Tunable

Required

300

Fault Detection Delay Time


(sec)

FTMR

R5 - Real

Variable

Required

Fault Detection Timer (sec)

ROP1

G1 Integer
Bits 0

Tunable

Required

Report Opt: NoRollUp


0=False
1=True

ROP2

G1 Integer
Bits 1

Tunable

Required

Report Opt: NoEventRecords


0=False
1=True

OFCUR

X6 - Byte

Tunable

Required

Valve Controller Off Current


0=0 milliamps
1=4 milliamps

RST

X7 - Byte
Bit 0

Tunable

Required

Reset
0=False
1=True

RQRST

X8 - Byte
Bit 0

Tunable

Required

Require Reset
0=False
1=True

REF_1100

8.14 LSDVC

N AM E

LC ALG.
RECORD
FIELD

TYPE

PSSRT

X4 - Byte
Bit 0

Tunable

PSRIN

R8 - Real

PSPT

R7 - Real

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Required

Start On-Demand PST


0=False
1=True

Tunable

Required

Required PST Interval (hrs)

Tunable

Required

Periodic PST Time (hrs)

DALRT
The following table shows the alerts that can appear for an LSDO algorithm and the bit position of
each alert.
BIT V ALUE

BIT POSITION

Failed to confirm after trip command.

Confirm lost while commanded On.

PSALR
The following table shows the alerts that can appear for an LSDO algorithm and the bit position of
each alert.
BIT V ALUE

BIT POSITION

Last test denied.

No successful test in the required interval.

Last test failed.

REF_1100

743

8.14 LSDVC
Using output algorithms with the DVC6000ESD
The LSDVC algorithm provides an interface to the DVC6000ESD for safety shutdown and for
partial stroke testing. The HART Two-state Output Channel provides the control signal and the
HART communications path to the digital valve controller. You can configure the output channel
to have an OFCUR of 0 mA or 4 mA. The control signal can command the valve controller to the
tripped state regardless of the configured OFCUR value. Using an OFCUR value of 4 mA allows
HART communication between the Logic Solver and the valve controller whether the valve
controller is in the normal or the trip state. When the OFCUR is 0 mA, the power is removed
entirely when the LSDVC algorithm drives the channel Off.
CAUTION! Emerson recommends keeping the travel cutoffs in the DVC6000ESD (Travel
Cutoff High and Travel Cutoff Low) at their default value of 50%. Do not set Travel Cutoff Low
below 15% or set Travel Cutoff High above 85%.
Implementation Example

Outfit the valve with a solenoid as shown in the figure below.

Use two output channels on the Logic Solver, one configured as a Digital Output Channel and
one as HART Two-state Output Channel.

Set the OFCUR parameter to 4 mA.

Use two output algorithms in the SIS module, one LSDO and one LSDVC.

Wire the EFFECTn output from the LSCEM algorithm to the CASND input on both algorithms.

Figure 14: Example implementation

744

REF_1100

8.14 LSDVC
An advantage of this implementation is HART communication is active whether the valve is in the
normal or trip state.
Alternate Implementation

The DVC6000ESD is not outfitted with a solenoid valve.

Use a single output channel configured as HART Two-state Output Channel.

Set the OFCUR parameter to 0 mA.

Use one output algorithm, an LSDVC algorithm, in the SIS module

Wire the EFFECTx output from the LSCEM algorithm to the CASND input of the LSDVC
algorithm.

Figure 15: Alternate implementation


An advantage of this implementation is that only one output channel is required. The
disadvantage is not having HART communication when the DVC6000ESD is in the shutdown
state.

REF_1100

745

8.15 LSDVTR

8.15 LSDVTR
Description
The Logic Solver Digital Voter (LSDVTR) algorithm provides a digital voter function for safety
instrumented functions. A voter algorithm monitors a number of input values and determines if
there are enough votes to trip. The LSDVTR algorithm monitors as many as 16 digital inputs. If a
configured number of the inputs vote to trip, the algorithm trips and sets the output of the
algorithm to 0 (zero).
For example, a process shutdown might be required if a tank exceeds a certain temperature.
Three temperature sensors are installed in the tank and a digital voter algorithm is configured to
monitor the sensors and trip if two of the three transmitters detect a high temperature.
Because the Logic Solver is a De-energized to Trip environment, the normal operating value of
the output is 1 (On) and the tripped value is 0 (Off).
Functional Symbol

Algorithm Execution
The LSDVTR algorithm has one or more digital inputs with status and one digital output with
status. The algorithm examines each input to determine whether that input is a vote to trip the
output (change it from the normal operating value to the tripped value).

746

REF_1100

8.15 LSDVTR
Basic Algorithm Operation
Voting in the Digital Voter algorithm is an M out of N function, that is, M inputs of the total N inputs
must vote to trip. For example, the algorithm can be configured as a 2 out of 3 voter, where two of
the three inputs must vote to trip before the output is tripped. The output of the algorithm is
typically wired to an LSCEM (Cause and Effect Matrix) algorithm, which interprets the value as
either a safe or dangerous process state.
The LSDVTR algorithm has three inputs by default. The number of inputs is extensible from 1 to
16. The M value corresponds to the parameter N2TRP (default value is 2). Common voting
schemes include 2 out of 3, 1 out of 2, and 2 out of 2. Other features of the algorithm make it
useful for single transmitter applications as a 1 out of 1 voter.
A vote to trip must remain a vote to trip for a configured time (TRDLY) before the output changes
to tripped. When the vote to trip clears, it must remain clear for NDLY before the output changes
to the normal state. The default for both delays is 0.0 seconds. The trip voting function has the
status parameter TRSTS that indicates the status of the trip vote.
For example, the possible values for TRSTS are:

Normal

Tripped

Voted to Trip, Delayed

Voted Normal, Delayed.

Trip Inhibited (when applicable)

Startup and Maintenance BYPx Options


It is often necessary to force a voter algorithm's output to remain at the Normal value during plant
startup to prevent a trip caused by inputs that have not stabilized at their normal operating values.
You may also want to bypass inputs to allow for sensor maintenance. By default, you can bypass
only one input of the algorithm at a time. The bypassed input cannot vote to trip.
The following sections explain how to use the BOPx options to implement startup and
maintenance bypasses.
Bypassing Inputs
If you have voter algorithms with 1 out of 2 or 1 out of 1 voting schemes you may want the ability
to bypass inputs to allow for maintenance. Voters that require multiple votes to trip can benefit
from bypass functions as well, resulting in more predictable behavior during transmitter
maintenance. Default algorithm behavior requires that BPERM be true to bypass inputs. You can
configure BPERM to be set by a display button or physical switch (digital input to the SIS module).
If your application does not require permission before inputs can be bypassed you can select the
BOPx option "Bypass permit is not required to bypass."
Reducing the Number to Trip
By default, an algorithm configured as an M out of N voter becomes an M out of (N-1) algorithm (a
2 out of 3 voter becomes a 2 out of 2 voter) when an input is bypassed because the bypassed
input cannot vote to trip. Selecting the BOPx option "A maintenance bypass reduces the number
to trip" causes an M out of N voter to become an (M-1) out of (N-1) voter (reduces the number
required to trip by one when an input is bypassed).

REF_1100

747

8.15 LSDVTR
The following table shows the effect the BOPx option "A maintenance bypass reduces the number
to trip" has on the actual number to trip (ANTRP) for several voting schemes. Note that in no case
is ANTRP less than one.
CONFIGURED VOTING
SCHEME

748

BOPX OPTION - A
TRIP.

M AINTENANCE BYP ASS REDUCES THE NUM BER TO

THE OPTION IS NOT SELECTED.


(USES CONFIGURED N2TRP)

THE OPTION IS SELECTED.


( R E D U C E S AN T R P )

2 out of 3

2 out of 2

1 out of 2

2 out of 2

Trip Inhibited

1 out of 1

1 out of 2

1 out of 1

1 out of 1

1 out of 1

Trip Inhibited

Trip Inhibited

2 out of 4

2 out of 3

1 out of 3

6 out of 8

6 out of 7

5 out of 7

REF_1100

8.15 LSDVTR
Allowing Multiple Bypasses
If your application requires, you can enable bypassing multiple inputs simultaneously by selecting
the BOPx option "Multiple maintenance bypasses are allowed."
If multiple bypasses are set, deselecting the BOPx option "Multiple maintenance bypasses are
allowed" prevents further bypasses being set but existing bypasses remain set. Additional
bypasses cannot be set until all existing bypasses are cleared.
Maintenance Bypass Timeout
You can configure a maintenance bypass to be active for a finite time using BTOUT. Its default
value is 0.0 seconds, which means no timeout is applied (maintenance bypasses remain active
until BYPx parameters become False, either by changing True BYPx parameters to False or
changing BPERM to False).
When BTOUT is non-zero, BTMR is preset to BTOUT seconds when the first BYPx parameter
becomes True (not when BPERM becomes True). Each module scan thereafter BTMR is
decremented until it times out (unless all BYPx parameters become False, in which case the
algorithm resets BTMR to 0.0).
BTMR is common to all inputs. The value of BTMR does not change when a second BYPx
parameter is changed to True (if multiple bypasses are allowed). When BTMR times out, the
algorithm default behavior changes all True BYPx parameters to False. If you use bypass
timeouts, do not expose BYPx parameters as algorithm inputs and wire to them. Doing so will
prevent the algorithm from removing bypasses upon timeout. If you need to manipulate BYPx
parameters from SIS module logic, use an LSCALC algorithm to conditionally assign them.
Optionally, you can use the bypass timer for indication only by selecting the BOPx option
"Maintenance bypass timeout is for indication only." This causes the timeout of BTMR to activate
a notification alarm (DALRT Expiration Reminder), but does not undo bypasses.
Bypass Timeout Reminder
You can configure the algorithm to remind operators that a bypass timeout is imminent. By
default, the algorithm does not notify. There are two ways you can cause a notification:

For bypasses with a configured timeout, you can cause notification in advance of the timeout
by setting RMTIM to a non-zero value. When BTMR is non-zero but less than or equal to
RMTIM, the alarm condition DALRT Expiration Reminder is active.
The bypass timer is re-armed only after the first bypass. However, BTMR is a writeable
parameter. After notification that a timeout is about to happen, BTMR can be incremented
using a display button or some other suitable technique to extend the time.

REF_1100

A second approach is available when you are using the bypass timeout for indication only,
that is, bypasses are not removed when BTMR expires (the BOPx option "Maintenance
bypass timeout is for indication only" is selected). In this case the reminder alarm condition
becomes active when BTMR times out even if RMTIM is 0.0. If RMTIM is non-zero, the
reminder occurs prior to timeout. If BTMR times out, the reminder is active and remains active
until all bypasses have been removed.

749

8.15 LSDVTR
The following table describes the behavior of the bypass timeout and reminder function for three
different configuration setups.
Maintenance Bypass Timeout and Reminder Function Behavior
CONDITION

BTOUT

AND

BOPX CONFIGURATION

BTOUT = 0.0
(NO TIMEOUT)

750

BTOUT > 0.0 AND THE


BOPX OPTION
"M AINTEN AN CE BYP ASS

BTOUT > 0.0 AND THE


BOPX OPTION
"M AINTEN AN CE BYP ASS

TIMEOUT IS FOR INDICATION


ONLY" IS NOT SELECTED
(BYPX REMOVED ON
TIMEOUT)

TIMEOUT IS FOR
INDICATION ONLY" IS
SELECTED
(TIMEOUT FOR
INDICATION ONLY)

BPERM changes to
True

BTMR stays 0.0

BTMR stays 0.0

BTMR stays 0.0

First input is
bypassed (BYPx
changes to True)

BTMR stays 0.0

BTMR = BTOUT seconds and


begins timing down

BTMR = BTOUT seconds


and begins timing down

Second input is
bypassed
(assuming the
BOPx option
"Multiple
maintenance
bypasses are
allowed" is
selected).

BTMR stays 0.0

BTMR continues timing down

BTMR continues timing


down

BTMR > RMTIM

N/A

No reminder

No reminder

BTMR <= RMTIM

No reminder

Reminder alarm condition is


active

Reminder alarm condition is


active

Bypass timer times


out

N/A

The algorithm changes all BYPx


parameters to False. Reminder
alarm condition clears on the
following scan.

Reminder alarm condition


remains active until all
bypasses are removed
manually.

REF_1100

8.15 LSDVTR
Startup Bypass Trip Inhibit
It is often necessary to force a voter algorithm's output to remain at the Normal value during plant
startup to prevent a trip caused by inputs that have not stabilized at their normal operating values.
This startup bypass allows the process to reach normal operating conditions without tripping. Use
the STUP parameter and associated parameters for startup bypasses. Do not use maintenance
overrides for this purpose.
Timed Startup Bypass (the BOPx option "Startup bypass duration is event-based" is not
selected)
On a rising edge of the STUP parameter, the algorithm forces OUT to the normal state value for a
configurable length of time defined by SUTM. When the countdown timer SUTMR times out, the
algorithm resumes normal trip detection. The default behavior of the algorithm is such that a
subsequent rising edge of STUP does not affect the startup time while SUTMR is timing down. To
avoid a pending trip on timeout, you can allow each rising edge of STUP to re-arm SUTMR (by
selecting the BOPx option "Startup bypass preset is allowed while active").
A reminder becomes available to STUP bypasses by selecting the BOPx option "Reminder
applies to startup bypass." When SUTMR is greater than 0.0 but less than RMTIM the reminder
alarm condition (DALRT Expiration Reminder) is active. The reminder alarm condition is common
to the timeout of maintenance and startup bypasses.
Another option is to have the startup timer expire when inputs have stabilized, that is, when there
have not been enough votes to trip for a configurable period of time. When the BOPx option
"Startup bypass expires upon stabilization" is selected, the bypass timer expires when the
process stabilizes. While SUTMR is timing down, STMR times up whenever there are not enough
votes to trip and resets whenever the trip votes equal or exceed the number required to trip.
If STMR reaches the configured STM, SUTMR resets to 0.0 and normal trip detection resumes.
While SUTMR is timing down, the algorithm increments T2STB and stops as soon as the STMR
is triggered. T2STB indicates the total number of seconds during the startup bypass until the
inputs become and remain stable (assuming SUTM is sufficiently long).
STMR does not reset at the end of the startup time period, but is reset at the beginning of a
startup and at any time during the startup when there are enough trip votes. T2STB is reset at the
beginning of a startup bypass. STMR and T2STB are processed even when the stabilization
option is not used (the BOPx option "Startup bypass expires upon stabilization" is not selected).
You can use the value of T2STB to optimize the configured SUTM.
Event-Based Startup Bypass (the BOPx option "Startup bypass duration is event-based" is
selected)
When the startup bypass expires based on an event rather than a fixed time period, select the
BOPx option "Startup bypass duration is event based." This ends the startup bypass when the
STUP parameter becomes False. STMR and T2STB are not processed. They are set to 0.0 when
STUP becomes True.
Bypass Permit Control
When the BOPx option "Bypass permit control should be visible in operator interface" is selected,
the algorithm faceplate contains a button which operators can use to set BPERM. Do not select
this option if logic in the SIS module is writing to BPERM (for example, a keyswitch is used to
permit bypassing).

REF_1100

751

8.15 LSDVTR
The following table summarizes the BOPx options and their effects.
BOPx parameter options

752

OPTION

WHEN OPTION

A maintenance bypass
reduces the number to
trip. (BOP1 MaintBypRed)

An M out of N voter becomes an


(M-1) out of (N-1) voter (number
required to trip by is reduced by one)
when an input is bypassed.

An M out of N voter becomes an M


out of (N-1) voter when an input is
bypassed.

Multiple maintenance
bypasses are allowed.
(BOP2 MulBypAllowed)

You can bypass multiple inputs at the


same time.

Only one input can be bypassed at a


time.

Maintenance bypass
timeout is for indication
only.
(BOP3 - IndicateOnly)

When BTMR times out DALRT


Bypass Active remains set and input
bypasses remain in effect.

When BTMR times out DALRT


Bypass Active clears and all
bypasses are cleared.

Startup bypass preset is


allowed while active.
(BOP4 - ReArmAllowed)

Each time STUP is set to True,


SUTMR is reset to the configured
value of SUTM.

SUTMR is not reset.

Startup bypass expires


upon stabilization.
(BOP5 - BypExpires)

Startup bypass and SUTMR clear if


STMR reaches STM (after there are
not enough votes to trip for the
configured amount of time).

Startup bypass ends when SUTMR


reaches 0 (zero).

Reminder applies to
startup bypass.
(BOP6 ReminderApplies)

When SUTMR is greater than 0.0 but


less than RMTIM, the DALRT
Expiration Reminder is set. The
reminder alarm condition is common
to maintenance and startup bypass
timeouts.

DALRT Expiration Reminder does not


apply to startup bypass.

Startup bypass duration


is event-based.
(BOP7 - BypDurEvent)

Startup bypass expires only when


STUP becomes False. STMR and
T2STB are not processed.

Startup bypass is time based.

Bypass permit is not


required to bypass.
(BOP8 - PermitNotReq)

BPERM does not need to be set to


True for inputs to be bypassed.

BPERM must be set to True for inputs


to be bypassed.

Bypass permit control


should be visible in
operator interface.
(BOP9 - BypPerVisible)

Bypass permit controls appear in the


standard LSDVTR faceplate. Do not
select this option if SIS module logic
writes to BPERM (for example,
bypass permitting is done using a
keyswitch)

Bypass permit controls do not appear


in the standard LSDVTR faceplate.

IS

SELECTED

WHEN OPTION

IS

NOT SELECTED

REF_1100

8.15 LSDVTR
Status Handling
The status of the inputs influences algorithm behavior based on how the SOPT parameter is
configured. The three choices of SOPT are:

Always Use Value The value of the input is always used regardless of status. In this way a
hardware failure does not necessarily cause a shutdown and time is allowed for repair.
Detected hardware failures are indicated by standard alarms on the Logic Solver card. This is
the default option.

Will Not Vote if Bad The input value is not counted as a vote to trip if its status is Bad.

Vote to Trip if Bad The input value is counted as a vote to trip if the input status is Bad.

The following table shows how several common voting schemes degrade when a single input has
bad status based on the option chosen for SOPT.
ORIGINAL
VOTING SCHEME

RESULTING VOTING SCHEME


ALW AYS USE V ALUE

FOR

SOPT V ALUES

WILL NOT VOTE


BAD

IF

VOTE

TO

2 out of 3

2 out of 3 or 1 out of 2

2 out of 2

1 out of 2

2 out of 2

2 out of 2 or 1 out of 1

Will Not Vote if Bad

1 out of 1

1 out of 2

1 out of 2 or Tripped

1 out of 1

Tripped

1 out of 1

1 out of 1 or Tripped

Trip Inhibited

Tripped

TRIP

IF

B AD

The degraded voting scheme depends on the value of the input with Bad status.

The LSDVTR algorithm determines the status of OUT the same way no matter which status
option is chosen. The status calculation is completely separate from the value calculation.
The status of OUT is Good if the number of non-bypassed inputs with Good status is greater than
or equal to ANTRP or all inputs are bypassed; otherwise, the status is Bad. Uncertain status on
inputs is treated as Good.
When any input has Bad status, the DALRT Input Bad becomes active.

REF_1100

753

8.15 LSDVTR
TRSTS Indication
The TRSTS parameter indicates the state of the trip vote functions. The typical value for TRSTS
is Normal, and less commonly, Tripped. As shown in the following figure, TRSTS can be delayed
when TRDLY or NDLY is non-zero and a transition is occurring between normal and tripped
states.
A fifth state, Trip Inhibited, occurs whenever a startup bypass is active or when it is not possible to
trip because there are not enough inputs participating in voting. The latter case can occur when
inputs are bypassed or when inputs have bad status and SOPT selected is Trip inhibited.
The solid lines in the figure show the common state transitions of TRSTS expected as the
process value moves above and below the trip point. The dashed lines show less common state
transitions.

Figure 16: State diagram for TRSTS


Algorithm Definitions

754

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOFIN

Y0 - Byte

Data Init.

Required

Number of Inputs

IN1

G3 - Integer
Bit 0

Variable

Required

Input 1

LD

IN2

G3 - Integer
Bit 1

Variable

Optional

Input 2

LD

REF_1100

8.15 LSDVTR

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN3

G3 - Integer
Bit 2

Variable

Optional

Input 3

LD

IN4

G3 - Integer
Bit 3

Variable

Optional

Input 4

LD

IN5

G3 - Integer
Bit 4

Variable

Optional

Input 5

LD

IN6

G3 - Integer
Bit 5

Variable

Optional

Input 6

LD

IN7

G3 - Integer
Bit 6

Variable

Optional

Input 7

LD

IN8

G3 - Integer
Bit 7

Variable

Optional

Input 8

LD

IN9

G3 - Integer
Bit 8

Variable

Optional

Input 9

LD

IN10

G3 - Integer
Bit 9

Variable

Optional

Input 10

LD

IN11

G3 - Integer
Bit 10

Variable

Optional

Input 11

LD

IN12

G3 - Integer
Bit 11

Variable

Optional

Input 12

LD

IN13

G3 - Integer
Bit 12

Variable

Optional

Input 13

LD

IN14

G3 - Integer
Bit 13

Variable

Optional

Input 14

LD

IN15

G3 - Integer
Bit 14

Variable

Optional

Input 15

LD

IN16

G3 - Integer
Bit 15

Variable

Optional

Input 16

LD

OUT

X1 - Byte

Variable

Required

Output

LD

OUTNB

X3 - Byte

Variable

Optional

Output with No Bypass

LD

TVN1

G4 - Integer
Bit 0

Variable

Optional

Voted-to-Trip Status
Input 1

LD

TVN2

G4 - Integer
Bit 1

Variable

Optional

Voted-to-Trip Status
Input 2

LD

TVN3

G4 - Integer
Bit 2

Variable

Optional

Voted-to-Trip Status
Input 3

LD

TVN4

G4 - Integer
Bit 3

Variable

Optional

Voted-to-Trip Status
Input 4

LD

TVN5

G4 - Integer
Bit 4

Variable

Optional

Voted-to-Trip Status
Input 5

LD

TVN6

G4 - Integer
Bit 5

Variable

Optional

Voted-to-Trip Status
Input 6

LD

REF_1100

755

8.15 LSDVTR

756

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

TVN7

G4 - Integer
Bit 6

Variable

Optional

Voted-to-Trip Status
Input 7

LD

TVN8

G4 - Integer
Bit 7

Variable

Optional

Voted-to-Trip Status
Input 8

LD

TVN9

G4 - Integer
Bit 8

Variable

Optional

Voted-to-Trip Status
Input 9

LD

TVN10

G4 - Integer
Bit 9

Variable

Optional

Voted-to-Trip Status
Input 10

LD

TVN11

G4 - Integer
Bit 10

Variable

Optional

Voted-to-Trip Status
Input 11

LD

TVN12

G4 - Integer
Bit 11

Variable

Optional

Voted-to-Trip Status
Input 12

LD

TVN13

G4 - Integer
Bit 12

Variable

Optional

Voted-to-Trip Status
Input 13

LD

TVN14

G4 - Integer
Bit 13

Variable

Optional

Voted-to-Trip Status
Input 14

LD

TVN15

G4 - Integer
Bit 14

Variable

Optional

Voted-to-Trip Status
Input 15

LD

TVN16

G4 - Integer
Bit 15

Variable

Optional

Voted-to-Trip Status
Input 16

LD

ANTRP

X6 - Byte

Variable

Optional

Actual Votes Needed to


Trip

LA

BTMRH

R3 - Real

Variable

Optional

Bypass Countdown
Timer (hrs)

LA

DLYTM

R4 - Real

Variable

Optional

Countdown Timer for


Delay

LA

DALRT

G5 - Integer

Variable

Optional

Alarm Conditions Set by


algorithm.
1 = Trip Active
4 = Bypass Active
8 = Startup Override
Active
32 = Expiration
Reminder
128 = Bypassed Input
Tripped
256 = Input Bad

LX

STMR

R5 - Real

Variable

Optional

Startup No-Vote-to-Trip
Timer

LA

SUTMR

R6 - Real

Variable

Optional

Startup Inhibit Timer in


seconds.

LA

T2STB

R7 - Real

Variable

Optional

Time to Stable in
seconds.

LA

REF_1100

8.15 LSDVTR

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

TRSTS

X7 - Byte

Variable

Optional

Trip Status Indicator


0 = Normal
1 = Tripped
2 = Trip Inhibited
3 = Voted to Trip Delayed
4 = Voted Normal Delayed

LA

TRPVT

X8 - Byte

Variable

Optional

Num of Inputs
Voted-to-Trip

LA

BOP1

G0 - Integer
Bit 0

Tunable

Required

Bypass Opt:
MaintBypRed
0=False
1=True

BOP2

G0 - Integer
Bit 1

Tunable

Required

Bypass Opt:
MulBypAllowed
0=False
1=True

BOP3

G0 - Integer
Bit 2

Tunable

Required

Bypass Opt: IndicateOnly


0=False
1=True

BOP4

G0 - Integer
Bit 3

Tunable

Required

Bypass Opt:
ReArmAllowed
0=False
1=True

BOP5

G0 - Integer
Bit 4

Tunable

Required

Bypass Opt: BypExpires


0=False
1=True

BOP6

G0 - Integer
Bit 5

Tunable

Required

Bypass Opt:
ReminderApplies
0=False
1=True

BOP7

G0 - Integer
Bit 6

Tunable

Required

Bypass Opt:
BypDurEvent
0=False
1=True

BOP8

G0 - Integer
Bit 7

Tunable

Required

Bypass Opt:
PermitNotReq
0=False
1=True

BOP9

G0 - Integer
Bit 8

Tunable

Required

Bypass Opt:
BypPerVisible
0=False
1=True

BYP1

C0 - Integer

Selectable

Optional

Voting Bypass for Input 1


0=No
1=Yes

LD

BYP2

C1 - Integer

Selectable

Optional

Voting Bypass for Input 2


0=No
1=Yes

LD

REF_1100

757

8.15 LSDVTR

758

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

BYP3

C2 - Integer

Selectable

Optional

Voting Bypass for Input 3


0=No
1=Yes

LD

BYP4

C3 - Integer

Selectable

Optional

Voting Bypass for Input 4


0=No
1=Yes

LD

BYP5

C4 - Integer

Selectable

Optional

Voting Bypass for Input 5


0=No
1=Yes

LD

BYP6

C5 - Integer

Selectable

Optional

Voting Bypass for Input 6


0=No
1=Yes

LD

BYP7

C6 - Integer

Selectable

Optional

Voting Bypass for Input 7


0=No
1=Yes

LD

BYP8

C7 - Integer

Selectable

Optional

Voting Bypass for Input 8


0=No
1=Yes

LD

BYP9

C8 - Integer

Selectable

Optional

Voting Bypass for Input 9


0=No
1=Yes

LD

BYP10

YT - Integer

Selectable

Optional

Voting Bypass for Input


10
0=No
1=Yes

LD

BYP11

DO - Integer

Selectable

Optional

Voting Bypass for Input


11
0=No
1=Yes

LD

BYP12

YQ - Integer

Selectable

Optional

Voting Bypass for Input


12
0=No
1=Yes

LD

BYP13

D2 - Integer

Selectable

Optional

Voting Bypass for Input


13
0=No
1=Yes

LD

BYP14

YP - Integer

Selectable

Optional

Voting Bypass for Input


14
0=No
1=Yes

LD

BYP15

D4 - Integer

Selectable

Optional

Voting Bypass for Input


15
0=No
1=Yes

LD

BYP16

D5 - Integer

Selectable

Optional

Voting Bypass for Input


16
0=No
1=Yes

LD

REF_1100

8.15 LSDVTR

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

BPERM

X2 - Byte

Selectable

Optional

Permit Input Bypass


0=No
1=Yes

LD

BTOUT

R1 - Real

Tunable

Required

0.0

Input Bypass Reset


Timeout (sec)

BTMR

R2 - Real

Data Init.

Required

0.0

Bypass Countdown
Timer (sec)

NDLY

S4 - Real

Tunable

Required

Output Reset Delay (sec)

N2TRP

X4 - Byte

Tunable

Required

Votes Needed to Trip

RMTIM

S5 - Real

Tunable

Required

Reminder Alarm Duration


(sec)

ROP1

G1 - Integer
Bit 0

Tunable

Required

Report Opt: NoRollUp


0=False
1=True

ROP2

G1 - Integer
Bit 1

Tunable

Required

Report Opt:
NoEventRecords
0=False
1=True

STM

S6 - Real

Tunable

Required

Process Stabilization
Time (sec)

STUP

X5 - Byte
Bit 0

Tunable

Required

Inhibit Startup Trip


Detection
0=No
1=Yes

SUTM

S8 - Real

Tunable

Required

Startup Inhibit Duration


(sec)

SOPT

Y5 - Byte

Tunable

Required

Status Options if Bad


Input
0=Always Use Value
1=Will Not Vote if Bad
2=Vote to trip if Bad

TRDLY

T2 - Real

Tunable

Required

Trip Delay (sec)

REF_1100

759

8.15 LSDVTR

DALRT
The following table shows the alerts that can appear for an LSDVTR algorithm, an explanation of
each alert, and the bit position of each alert.

760

BIT V ALUE

EXPLAN ATION

BIT POSITION

Trip Active

Inactive when OUT is in the normal operating state,


active when OUT is in the trip state.

Bypass Active

Active when there is a maintenance bypass on any


input (any BYPx parameter is True).

Startup Override Active

Active whenever the startup bypass is active.

Expiration Reminder

Active when either a maintenance bypass or a startup


bypass is about to expire.

Bypassed Input Tripped

Active if one or more bypassed inputs have exceeded


the trip limit.

Input Bad

Active if any input has bad status.

REF_1100

8.16 LSLIM

8.16 LSLIM
Description
The Logic Solver Limit (LSLIM) algorithm limits an input value between two reference values. The
algorithm has options that set the output to a default value or the last value if the input becomes
out of range.
IN is the analog input value and status.
OUT is the analog output value and status.
LMIND is set True (1) when the input is limited to the OHLIM value. It remains True until the input
is limited to the OLLIM value, at which time it is set False (0). It remains False until the input is
again limited to the OHLIM value.
OUTLA is a Boolean value set True when the input is limited to the minimum value.
OUTHA is a Boolean value set True when the input is limited to the maximum value.
If the LMOPT option is CLAMP, then OUT is set to either OHLIM or OLLIM when there is a
corresponding limit violation.
You can use other LMOPT options instead of passing the clamped value to the output. If the
UseLast option is set then the output is set to the last output when the high or low limit is
exceeded. If the UseDefault option is set then the output is set to the DEFLT parameter value.
Functional Symbol

REF_1100

761

8.16 LSLIM
Algorithm Execution
The LSLIM algorithm restricts the output value between a high limit and a low limit. When IN is
less than or equal to the configured minimum value (OLLIM), OUT equals OLLIM and OUTLA is
set True.
When IN is greater than or equal to the configured maximum value (OHLIM), OUT equals OHLIM
and OUTHA is set True.
When the value is within the limits, OUTHA and OUTLA are set False.
When IN becomes greater than or equal to OHLIM, LMIND is set True.
When IN becomes less than or equal to OLLIM, LMIND is set False.
If the LMOPT option is CLAMP, then OUT is set to either OHLIM or OLLIM when there is a
corresponding limit violation.
You can use other LMOPT options instead of passing the clamped value to the output. If the
UseLast option is set then the output is set to the last output when the high or low limit is
exceeded. If the UseDefault option is set then the output is set to the DEFLT parameter value.
The following table shows an example of the Limit algorithm outputs when OLLIM = 5 and OHLIM
= 90:
LSLIM algorithm execution example
IN

OUT

OUTLA

OUTHA

LMIND

True

False

False

True

False

False

50

50

False

False

Equal to the
previous value

90

90

False

True

True

100

90

False

True

True

Status Handling
The statuses of the outputs (OUT, OUTHA, and OUTLA) are set to the input status. The status of
LMIND is always Good.

762

REF_1100

8.16 LSLIM

Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Input

LA

OUT

Variable

Required

Output

LA

OUTLA

Variable

Optional

Low-Limited Input
Status

LD

OUTHA

Variable

Optional

High-Limited Input
Status

LD

LMIND

Variable

Optional

Hi-Low Limit Indicator

LD

OLLIM

R3 - Real

Tunable

Required

Min Output Value


Allowed

OHLIM

R2 - Real

Tunable

Required

100

Max Output Value


Allowed

LMOPT

X1 - Byte

Tunable

Required

Limit Options
1=Clamp
2=UseLast
3=UseDefault

DEFLT

R1 - Real

Tunable

Required

Output Default value

REF_1100

763

8.17 LSMID

8.17 LSMID
Description
The Logic Solver Mid Selector (LSMID) algorithm selects the mid-valued input from multiple
analog signals. This algorithm selects only from those inputs that are not bad. When there is an
even number of inputs, the average of the two middle valued inputs is used as the OUT value and
SEL is the number of the lowest-valued input of the two that are averaged.
Functional Symbol

Algorithm Execution
This algorithm selects the mid-valued input from those inputs that are not bad from as many as 16
inputs. When the algorithm has an odd number of inputs, OUT is the value of the selected input
and SEL is the number of the selected input. When the algorithm has an even number of inputs,
OUT is the average of the two mid-valued inputs and SEL is the number of the lowest-valued
input of the two mid-valued inputs. For example, an algorithm has the following inputs:

IN1 = 17

IN2 = 20

IN3 = 19

IN4 = 66

In this example OUT is equal to 19.5 (the average of IN2 and IN3) and SEL is 3 (IN3 is 19, the
least-valued of the two mid-valued inputs).
Alarm Detection
This algorithm calculates a DVACT parameter that can be used for alarming. This parameter is
True if one or more of the inputs used in the selection process is farther than DVLIM away from
the middle signal. A DVHYS parameter is used when DVACT is set for the calculation of when the
alarm has cleared.
Status Handling
Generally (see exceptions below), when an input is selected, the statuses of OUT and SEL are
set to the status of the selected input.

Quality Use And Propagation


A bad input is never used.
Any input which has poor quality will be used.
If the number of poor or good inputs is zero, then bad is propagated to OUT and SEL

764

REF_1100

8.17 LSMID

Limit Status Propagation


If an even number of inputs used by the algorithm: propagate not limited, unless both
inputs have the same limit status, in which case propagate that limit status.

Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOFIN

Y0 - Byte

Data Init.

Required

Number of Inputs

IN1

Variable

Required

Input 1

LA

IN2

Variable

Required

Input 2

LA

IN3

Variable

Optional

Input 3

LA

IN4

Variable

Optional

Input 4

LA

IN5

Variable

Optional

Input 5

LA

IN6

Variable

Optional

Input 6

LA

IN7

Variable

Optional

Input 7

LA

IN8

Variable

Optional

Input 8

LA

IN9

Variable

Optional

Input 9

LA

IN10

Variable

Optional

Input 10

LA

IN11

Variable

Optional

Input 11

LA

IN12

Variable

Optional

Input 12

LA

IN13

Variable

Optional

Input 13

LA

IN14

Variable

Optional

Input 14

LA

IN15

Variable

Optional

Input 15

LA

IN16

Variable

Optional

Input 16

LA

OUT

Variable

Required

Calculated /
Selected Output

LA

SEL

Variable

Optional

Number of Selected
Input

LA

DVACT

Variable

Optional

Input Deviation
Status. The choices
are:
True
False

LD

DIS1

G0 Integer

Selectable

Optional

Disable Input 1
0=No
1=Yes

LD

DIS2

G1 Integer

Selectable

Optional

Disable Input 2
0=No
1=Yes

LD

DIS3

G2 Integer

Selectable

Optional

Disable Input 3
0=No
1=Yes

LD

REF_1100

765

8.17 LSMID

766

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

DIS4

G3 Integer

Selectable

Optional

Disable Input 4
0=No
1=Yes

LD

DIS5

G4 Integer

Selectable

Optional

Disable Input 5
0=No
1=Yes

LD

DIS6

G5 Integer

Selectable

Optional

Disable Input 6
0=No
1=Yes

LD

DIS7

G6 Integer

Selectable

Optional

Disable Input 7
0=No
1=Yes

LD

DIS8

G7 Integer

Selectable

Optional

Disable Input 8
0=No
1=Yes

LD

DIS9

G8 Integer

Selectable

Optional

Disable Input 9
0=No
1=Yes

LD

DIS10

G9 Integer

Selectable

Optional

Disable Input 10
0=No
1=Yes

LD

DIS11

B0 Integer

Selectable

Optional

Disable Input 11
0=No
1=Yes

LD

DIS12

B1 Integer

Selectable

Optional

Disable Input 12
0=No
1=Yes

LD

DIS13

B2 Integer

Selectable

Optional

Disable Input 13
0=No
1=Yes

LD

DIS14

YU Integer

Selectable

Optional

Disable Input 14
0=No
1=Yes

LD

DIS15

B4 Integer

Selectable

Optional

Disable Input 15
0=No
1=Yes

LD

DIS16

B5 Integer

Selectable

Optional

Disable Input 16
0=No
1=Yes

LD

DVHYS

S8 - Real

Tunable

Required

Dev Status Reset


Hysteresis

DVLIM

S9 - Real

Tunable

Required

MID Deviation Limit


Value

TPSC

T1 - Real

Tunable

Required

100

Input Scale: Top

BTSC

T2 - Real

Tunable

Required

Input Scale: Bottom

REF_1100

8.17 LSMID

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

SCDML

Y5 - Byte

Tunable

Required

Input Scale: Decimal


Places

REF_1100

767

8.18 LSNAND

8.18 LSNAND
Description
The Logic Solver Not AND (LSNAND) algorithm generates a digital output value based on
inverting the logical AND of two to 16 digital inputs. The algorithm supports signal status
propagation.
IN1 through INx are the digital input values and statuses (as many as 16 inputs).
OUT is the digital output value and status.
Functional Symbol

Algorithm Execution
The number of inputs to the LSNAND algorithm is an extensible parameter. The algorithm default
is two inputs. Use the Control Builder (see Ovation Control Builder User Guide) to add additional
input pins.
The LSNAND algorithm examines the inputs you define and applies the logical AND function to
the inputs, then applies the logical NOT function. When all inputs are True (1), the output is False.
When one or more of the inputs is False (0), the output is True.
Status Handling
The output status is set to the worst status among the selected inputs unless at least one input is
False and its status is not Bad. When this is the case, the output status is set to GOOD.
Algorithm Definitions

768

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOFIN

Y0 - Byte

Data Init.

Required

Number of Inputs

IN1

Variable

Required

Input 1

LD

IN2

Variable

Required

Input 2

LD

IN3

Variable

Optional

Input 3

LD

IN4

Variable

Optional

Input 4

LD

IN5

Variable

Optional

Input 5

LD

IN6

Variable

Optional

Input 6

LD

REF_1100

8.18 LSNAND

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN7

Variable

Optional

Input 7

LD

IN8

Variable

Optional

Input 8

LD

IN9

Variable

Optional

Input 9

LD

IN10

Variable

Optional

Input 10

LD

IN11

Variable

Optional

Input 11

LD

IN12

Variable

Optional

Input 12

LD

IN13

Variable

Optional

Input 13

LD

IN14

Variable

Optional

Input 14

LD

IN15

Variable

Optional

Input 15

LD

IN16

Variable

Optional

Input 16

LD

OUT

Variable

Required

Output

LD

REF_1100

769

8.19 LSNDE

8.19 LSNDE
Description
The Logic Solver Negative Edge Detect Trigger (LSNDE) algorithm generates a True (1) digital
output when the digital input makes a negative (True-to-False) transition since the last execution
of the algorithm. If there has been no transition, the digital output of the algorithm is False (0).
The LSNDE algorithm supports signal status propagation.
IN is the digital input value and status.
OUT is the digital output value and status.
Functional Symbol

Algorithm Execution
The LSNDE algorithm is used to trigger other logical events based on the falling transition of a
logical signal. If the input value has changed from True to False since the algorithm was last
executed, the output of the algorithm is set True. If the value has not changed from True to False,
the algorithm output is set False. The following figure shows how the LSNDE algorithm responds
to a change in input:

Figure 17: LSNDE algorithm execution example

770

REF_1100

8.19 LSNDE
Status Handling
The output status is set to the input status.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Input

LD

OUT

Variable

Required

Output

LD

REF_1100

771

8.20 LSNOR

8.20 LSNOR
Description
The Logic Solver Not OR (LSNOR) algorithm generates a digital output value based on inverting
the logical OR of two to 16 digital inputs. When one or more of the inputs is True (1), the output is
set to False.
The algorithm supports signal status propagation.
IN1 through INx are the digital input values and statuses (as many as 16 inputs).
OUT is the digital output value and status.
Functional Symbol

Algorithm Execution
The number of inputs to the LSNOR algorithm is an extensible parameter. The algorithm default is
two inputs. Use the Control Builder (see Ovation Control Builder User Guide) to add additional
input pins.
When one or more of the inputs is True (1), the output is set to False. Otherwise, the output is set
to True.
Status Handling
The output status is set to the worst among the input statuses. However, when at least one input
is True and its status is not Bad, the output status is set to Good.
Algorithm Definitions

772

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOFIN

Y0 - Byte

Data Init.

Required

Number of Inputs

IN1

Variable

Required

Input 1

LD

IN2

Variable

Required

Input 2

LD

IN3

Variable

Optional

Input 3

LD

IN4

Variable

Optional

Input 4

LD

IN5

Variable

Optional

Input 5

LD

IN6

Variable

Optional

Input 6

LD

REF_1100

8.20 LSNOR

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN7

Variable

Optional

Input 7

LD

IN8

Variable

Optional

Input 8

LD

IN9

Variable

Optional

Input 9

LD

IN10

Variable

Optional

Input 10

LD

IN11

Variable

Optional

Input 11

LD

IN12

Variable

Optional

Input 12

LD

IN13

Variable

Optional

Input 13

LD

IN14

Variable

Optional

Input 14

LD

IN15

Variable

Optional

Input 15

LD

IN16

Variable

Optional

Input 16

LD

OUT

Variable

Required

Output

LD

REF_1100

773

8.21 LSNOT

8.21 LSNOT
Description
The Logic Solver NOT (LSNOT) algorithm logically inverts a digital input signal and generates a
digital output value. When the input is True (1), the output is False (0). When the input is False,
the output is True.
The algorithm supports signal status propagation.
IN is the digital input value and status.
OUT is the digital output value and status.
Functional Symbol

Algorithm Execution
The LSNOT algorithm generates an output value that is the logical NOT of its input. When the
input is False, the output is True. When the input is True (1), the output is False.
Status Handling
The output status is set to the input status.
Algorithm Definitions

774

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Input

LD

OUT

Variable

Required

Output

LD

REF_1100

8.22 LSOFFD

8.22 LSOFFD
Description
The Logic Solver Off Delay Timer (LSOFFD) algorithm delays the transfer of a False (0) digital
input value to the output by a specified time period. The algorithm supports signal status
propagation.
IN is the digital input value and status used to trigger the timed digital output value.
OUT is the digital output value and status.
The Off-Delay Timer algorithm immediately transfers the digital input value (IN) to the output
(OUT) and resets the ETIME when IN is True (1). When IN transitions to False (0), OUT is reset
to False after a specified time period (TIMED). During this time period, ETIME tracks the time
starting when IN transitions to False until the time specified by TIMED expires.
Functional Symbol

Algorithm Execution
The following figure shows the timed response of the Off-Delay Timer algorithm.

Figure 18: LSOFFD algorithm timing diagram

REF_1100

775

8.22 LSOFFD
When IN is True, OUT is set True and the elapsed time counter (ETIME) is set to zero. When IN
is False for longer than TIMED, OUT is set False.
Status Handling
The output status is set to the input status.
Algorithm Definitions

776

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Input Trigger

LD

OUT

Variable

Required

Output

LD

ETIME

Variable

Optional

Elapsed Timer (sec)

LA

TIMED

R2 - Real

Tunable

Required

Output Reaction Time


Delay (sec)

REF_1100

8.23 LSOND

8.23 LSOND
Description
The Logic Solver On Delay Timer (LSOND) algorithm delays the transfer of a True (1) digital input
value to the output by a specified time period. The algorithm supports signal status propagation.
IN is the digital input value and status used to trigger the timed digital output value.
OUT is the digital output signal and status.
The On-Delay Timer algorithm immediately transfers the digital input value (IN) to OUT and resets
the ETIME when IN is False. When IN transitions to True, OUT is set True after a configured time
period (TIMED). During this time period, ETIME tracks the time starting when IN transitions to
True until the time specified by TIMED expires.
Functional Symbol

Algorithm Execution
The following figure shows the timed response of the LSOND algorithm.

Figure 19: LSOND algorithm timing diagram

REF_1100

777

8.23 LSOND
When IN is False, OUT is set False and the elapsed time counter (ETIME) is set to zero. When IN
is True longer than TIMED, OUT is set True.
Status Handling
The output status is set to the input status.
Algorithm Definitions

778

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Input Trigger

LD

OUT

Variable

Required

Output

LD

ETIME

Variable

Optional

Elapsed Timer (sec)

LA

TIMED

R2 - Real

Tunable

Required

Output Reaction Time


Delay (sec)

REF_1100

8.24 LSOR

8.24 LSOR
Description
The Logic Solver OR (LSOR) algorithm generates a digital output value based on the logical OR
of two to 16 digital inputs. When one or more of the inputs is True (1), the output is set to True.
The algorithm supports signal status propagation.
IN1 through INx are the digital input values and statuses (as many as 16 inputs).
OUT is the digital output value and status.
Functional Symbol

Algorithm Execution
The number of inputs to the LSOR algorithm is an extensible parameter. The algorithm default is
two inputs. Use the Control Builder (see Ovation Control Builder User Guide) to add additional
input pins. When one or more of the inputs is True (1), the output is set to True. Otherwise, the
output is set to False.
Status Handling
The output status is set to the worst among the input statuses. However, when at least one input
is True and its status is not Bad, the output status is set to GOOD.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOFIN

Y0 - Byte

Data Init.

Required

Number of Inputs

IN1

Variable

Required

Input 1

LD

IN2

Variable

Required

Input 2

LD

IN3

Variable

Optional

Input 3

LD

IN4

Variable

Optional

Input 4

LD

IN5

Variable

Optional

Input 5

LD

IN6

Variable

Optional

Input 6

LD

IN7

Variable

Optional

Input 7

LD

IN8

Variable

Optional

Input 8

LD

REF_1100

779

8.24 LSOR

780

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN9

Variable

Optional

Input 9

LD

IN10

Variable

Optional

Input 10

LD

IN11

Variable

Optional

Input 11

LD

IN12

Variable

Optional

Input 12

LD

IN13

Variable

Optional

Input 13

LD

IN14

Variable

Optional

Input 14

LD

IN15

Variable

Optional

Input 15

LD

OUT

Variable

Required

Output

LD

REF_1100

8.25 LSPDE

8.25 LSPDE
Description
The Logic Solver Positive Edge Trigger (LSPDE) algorithm generates a True (1) digital output
when the digital input makes a positive (False-to-True) transition since the last execution of the
algorithm. If there has been no transition, the digital output of the algorithm is False (0).
The LSPDE algorithm supports signal status propagation.
IN is the digital input value and status.
OUT is the digital output value and status.
Functional Symbol

Algorithm Execution
Use the LSPDE algorithm to trigger other logical events based on the rising transition of a logical
signal. If the input value has changed from False to True since the algorithm was last executed,
the output of the algorithm is set True. Otherwise, the output is False. The following drawing
shows how the Positive Edge Trigger algorithm responds to a change in input:

Figure 20: LSPDE algorithm execution example

REF_1100

781

8.25 LSPDE
Status Handling
The output status is set to the input status.
Algorithm Definitions

782

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Input

LD

OUT

Variable

Required

Output

LD

REF_1100

8.26 LSRET

8.26 LSRET
Description
The LSRET algorithm generates a True (1) digital output after the input has been True for a
specified time period. The time for which the input has been True and the output value are reset
only when the reset input is set True.
IN is the digital input value and status to be timed.
RST is the digital input value and status used to reset OUT and ETIME.
OUT is the digital output value and status.
Functional Symbol

Algorithm Execution
The algorithm output (OUT) is set True when the input (IN) has been True for a specified time
period (TIMED) while the RST input is False (0). When the RST input is False and the IN value
transitions to False, the ETIME stops and retains its value until IN transitions to True again. When
the RST value transitions to True, the ETIME is reset to zero and OUT is set False.

REF_1100

783

8.26 LSRET
The following figure shows the timed response of the Retentive Timer algorithm.

Figure 21: LSRET algorithm timing diagram


Status Handling
The output status is set to GoodNonCascade.
Algorithm Definitions

784

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Input Trigger

LD

RST

Variable

Required

Reset In

LD

OUT

Variable

Required

Output

LD

ETIME

Variable

Optional

Elapsed Timer
(sec)

LA

TIMED

R2 - Real

Tunable

Required

Output Reaction
Time Delay (sec)

REF_1100

8.27 LSRS

8.27 LSRS
Description
The Logic Solver Reset/Set Flip-Flop (LSRS) algorithm generates a digital output value based on
NOR logic of reset and set inputs:

If the reset input is False (0) and the set input is True (1), the output is True. The output
remains True, regardless of the set value, until the reset value is True. When reset becomes
True, the output is False.

When both inputs are True, the output is False.

When both inputs become False, the output remains at its last state and can be either True or
False.

RST is the reset digital input value and status.


SET is the set digital input value and status.
OUT is the digital output value and status.
Functional Symbol

Algorithm Execution
The LSRS algorithm is used to detect when the set input (SET) transitions to True. It holds the
output True, even when SET transitions to False, until another event changes the reset input
(RST) to True.
The following table shows the algorithm output value based on the possible SET and RST
combinations:
LSRS algorithm truth table
SET

RST

OUT

False

False

Last OUT

False

True

False

True

False

True

True

True

False

REF_1100

785

8.27 LSRS
Status Handling
The output status is equal to the worst status among the inputs.
Algorithm Definitions

786

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

RST

Variable

Required

Reset Input

LD

SET

Variable

Required

Set Input

LD

OUT

Variable

Required

Output

LD

REF_1100

8.28 LSSEQ

8.28 LSSEQ
Description
The LSSEQ algorithm associates system states with actions. The combination of LSSTD
algorithms (which associate transitions with states you define) and LSSEQ algorithms provide a
sequencing capability.
The LSSEQ algorithm can have as many as 16 states and 16 digital outputs. For each state, the
algorithm sets the value of the outputs based on the pattern defined by the MATRX parameter.
See the topic "To access the LSSEQ advanced editor window" in the Ovation Control Builder
User Guide for more information on the MATRIX parameter. The algorithm can step through the
states in sequence using internal increment and decrement parameters, or the algorithm can be
set to specific states (and the corresponding outputs set) from logic external to the algorithm.
Functional Symbol

Algorithm Execution
The LSSEQ algorithm has a configurable number of states and a configurable number of outputs.
By default the number of states is 16 and the number of outputs is 2. The MATRX parameter
defines a mask for each state that indicates how the outputs should be set when the algorithm is
in that state. The LSSEQ algorithm's state can be set in two ways:

If the STIND parameter is 1 (True) then STATE is set to the value of the STIN parameter.
This allows the algorithm to be driven from another algorithm, for example a State Transition
algorithm (LSSTD) whose STATE parameter is wired to STIN of the LSSEQ algorithm.

If the STIND parameter is 0 (False) the algorithm remains at its current state unless either the
INC or DEC parameter is set to True, thereby incrementing or decrementing STATE
accordingly. If the WRAP parameter is False STATE stops incrementing when the integer
value of STATE equals NOSTA and stops decrementing when the integer value of STATE
equals 1. If the WRAP parameter is True STATE wraps around from NOSTA to 1 for an
increment and from 1 to NOSTA for a decrement.

You can disable the LSSEQ algorithm by setting the ENBLE parameter to False. This sets STATE
to 0 and sets all the outputs to 0 (False). When the ENBLE parameter is changed to True and the
STIND parameter is not set, the algorithm sets STATE to 1 and drives the outputs based on the
mask for state 1.
If the STIND parameter is 0 (False), setting RST to True resets STATE back to state 1. RST
automatically resets to False after use.

REF_1100

787

8.28 LSSEQ
Overrides
In normal operation the outputs of the algorithm are a function of the current state and the
configured pattern for that state. However, the parameter OMASK can be manipulated to prevent
one or more outputs from being True. Setting bits in OMASK to 1 masks the corresponding output
from becoming 1 (True) regardless of what is configured for that state. In practice OMASK is
manipulated from within the SIS module by a LSCALC algorithm, for example, based on the
current batch phase.
Status Handling
The algorithm behavior is not affected by the status of the input parameters. The algorithm's
outputs always have good status.
Algorithm Definitions

788

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOOUT

Y0 - Byte

Data Init

Required

Number of Outputs

NOSTA

X1 - Byte

Data Init

Required

16

Number of Valid States

STIND

X4 - Byte

Variable

Optional

Set CurrentState to
InputState

LD

INC

X5 - Byte

Variable

Optional

Move to Next State

LD

DEC

X6 - Byte

Variable

Optional

Back to Previous State

LD

STIN

X7 - Byte

Variable

Optional

Input State

LA

ENBLE

X8 - Byte

Variable

Optional

Enable/Disable algorithm

LD

OUT1

YP - Integer
- Bit 0

Variable

Required

Output 1

LD

OUT2

YP - Integer
- Bit 1

Variable

Optional

Output 2

LD

OUT3

YP - Integer
- Bit 2

Variable

Optional

Output 3

LD

OUT4

YP - Integer
- Bit 3

Variable

Optional

Output 4

LD

OUT5

YP - Integer
- Bit 4

Variable

Optional

Output 5

LD

OUT6

YP - Integer
- Bit 5

Variable

Optional

Output 6

LD

OUT7

YP - Integer
- Bit 6

Variable

Optional

Output 7

LD

OUT8

YP - Integer
- Bit 7

Variable

Optional

Output 8

LD

OUT9

YP - Integer
- Bit 8

Variable

Optional

Output 9

LD

OUT10

YP - Integer
- Bit 9

Variable

Optional

Output 10

LD

REF_1100

8.28 LSSEQ

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOOUT

Y0 - Byte

Data Init

Required

Number of Outputs

OUT11

YP - Integer
- Bit 10

Variable

Optional

Output 11

LD

OUT12

YP - Integer
- Bit 11

Variable

Optional

Output 12

LD

OUT13

YP - Integer
- Bit 12

Variable

Optional

Output 13

LD

OUT14

YP - Integer
- Bit 13

Variable

Optional

Output 14

LD

OUT15

YP - Integer
- Bit 14

Variable

Optional

Output 15

LD

OUT16

YP - Integer
- Bit 15

Variable

Optional

Output 16

LD

STATE

X9 - Byte

Variable

Optional

Current State

LA

OMASK

D2 - Integer

Tunable

Required

Output Mask

RST

X2 - Byte

Selectable

Optional

Force to Initial
State 1
0=False
1=True

LD

WRAP

X3 - Byte

Tunable

Required

Stop DEC/INC if 1st/Last


State
0=False
1=True

Bit 0

REF_1100

789

8.29 LSSR

8.29 LSSR
Description
The Logic Solver Set/Reset Flip-Flop (LSSR) algorithm generates a digital output value based on
NAND logic of set and reset inputs:

When the reset input is False (0) and the set input is True (1), the output is True. The output
remains True until the reset input is True and the set input is False.

When the reset input is True, the output is equal to the set input.

When both inputs are True, the output is True.

When both inputs become False, the output remains at its last state and can be either True or
False.

RST is the reset digital input value and status.


SET is the set digital input value and status.
OUT is the digital output signal and status.
Functional Symbol

Algorithm Execution
The LSSR algorithm is used to detect a change in the set input (SET). When the reset input
(RST) is False, OUT is set True after SET changes to True. OUT remains True, even when SET
returns to False, and remains True until RST is changed to True and SET is False.
The following table shows the algorithm output value based on the possible SET and RST
combinations:
LSSR algorithm output values

790

SET

RST

OUT

False

False

Last OUT

False

True

False

True

False

True

True

True

True

REF_1100

8.29 LSSR
Status Handling
The output status is equal to the worst status among the inputs.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

SET

Variable

Required

Set Input

LD

RST

Variable

Required

Reset Input

LD

OUT

Variable

Required

Output

LD

REF_1100

791

8.30 LSSTD

8.30 LSSTD
Description
The Logic Solver State Transition Diagram (LSSTD) algorithm implements a user-defined state
machine in the Logic Solver. A state machine describes the possible states, and the transitions
between those states, that can occur in a system. The combination of LSSTD and LSSEQ
algorithms provide a sequencing capability. LSSTD algorithms associate transitions with system
states. LSSEQ algorithms associate system states with actions.
State machines may be described by state transition diagrams. For example, a burner
management system could be defined by the following diagram of the allowed transitions (arrows)
between system states (circles).

The algorithm's MATRX parameter describes the state diagram (the association of states and
input transitions). See the topic "To access the LSSTD advanced editor window" in the Ovation
Control Builder User Guide for more information on the MATRIX parameter.

792

REF_1100

8.30 LSSTD

Functional Symbol

Algorithm Execution
The Logic Solver State Transition Diagram (LSSTD) algorithm implements a state transition
diagram. The algorithm can have up to 16 states (outputs) and up to 16 transitions (inputs). You
configure the number of transition inputs, the number of output states, and a matrix of states
versus transitions where each entry indicates the state that the algorithm goes to when that
transition is active. By default the number of inputs (transitions) is 3 and the number of outputs
(states) is 2.
The LSSTD algorithm has a digital input with status (INx) for each transition, a STATE indicating
the current state, and a digital output with status for each state (OUTx). When the algorithm
executes it loops through the transition inputs until an active input is found that has an entry for
the current state in the state-transition matrix. STATE is then set to the matrix value and the
corresponding OUTx output is also set. Once an active transition is found that has a non-zero
matrix entry, no more transitions are checked. If the current state is a terminal state, that is, there
are no entries in the matrix for this state that are not zero, or if masked transitions prevent
transition to another state, the TRMNL parameter is set to True.
The initial state for the algorithm is state 1. When RST is set to True, the algorithm returns to the
initial state. The RST parameter automatically resets to False after it has been used.
The LSSTD algorithm also has an ENBL input. When ENBL is False, STATE is set to 0 and all
OUTx outputs are set to 0. When ENBL is changed from False to True the algorithm is forced into
state 1 and OUT1 is set to True. This allows an LSSTD algorithm to control other LSSTD
algorithms which implement sub-state machines. The Boolean output of the final sub-state
machine can then be wired into a transition of the top level algorithm which causes the sub-state
algorithm ENBL parameter to be set to False.
Overrides
In normal operation the algorithm transitions between states based on the beginning state, the
active transition inputs, and the configuration of the state-transition matrix. The normal behavior
can be overridden in two ways.

The parameter TMASK prevents one or more transition inputs from causing the state of the
algorithm to change. Setting bits in TMASK prevent the algorithm from seeing the
corresponding transition as active regardless of the transition's value or status. In practice
TMASK is manipulated from within the SIS module by an LSCALC algorithm (for example,
based on the current batch phase).

The algorithm can also be forced into a specific state by setting the STIND parameter to 1
and setting STIN to the desired state.

REF_1100

793

8.30 LSSTD
The OVRRD parameter indicates when the normal logic is being overridden. It can take on one of
the following values from lowest to highest priority:

None No overrides in effect.

All Associated Transitions Masked All transitions that would be active have been masked
in TMASK.

State Forced STIND has been set to 1.

Status Handling
The status of the input transition parameters influences the behavior of the LSSTD algorithm
based on the configuration of the SOPT parameter. The SOPT parameter has three values:

Always Use Value (the default) Use an input's value regardless of the input's status

Ignore If Bad If an input's status is Bad, the input value has no effect on the algorithm.

Use Last Good Value While an input's status is Bad, any change in input value is ignored.

Status is not propagated to OUTx parameters, which always have Good status.
Algorithm Definitions

794

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOSTA

Y0 - Byte

Data Init

Required

Number of States

NOTRA

Y2 - Byte

Data Init

Required

Number of
Transitions

IN1

D2 - Integer Bit 0

Variable

Required

Transition Input 1

LD

IN2

D2 - Integer Bit 1

Variable

Required

Transition Input 2

LD

IN3

D2 - Integer Bit 2

Variable

Optional

Transition Input 3

LD

IN4

D2 - Integer Bit 3

Variable

Optional

Transition Input 4

LD

IN5

D2 - Integer Bit 4

Variable

Optional

Transition Input 5

LD

IN6

D2 - Integer Bit 5

Variable

Optional

Transition Input 6

LD

IN7

D2 - Integer Bit 6

Variable

Optional

Transition Input 7

LD

IN8

D2 - Integer Bit 7

Variable

Optional

Transition Input 8

LD

IN9

D2 - Integer Bit 8

Variable

Optional

Transition Input 9

LD

IN10

D2 - Integer Bit 9

Variable

Optional

Transition Input 10

LD

IN11

D2 - Integer Bit 10

Variable

Optional

Transition Input 11

LD

REF_1100

8.30 LSSTD

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOSTA

Y0 - Byte

Data Init

Required

Number of States

IN12

D2 - Integer Bit 11

Variable

Optional

Transition Input 12

LD

IN13

D2 - Integer Bit 12

Variable

Optional

Transition Input 13

LD

IN14

D2 - Integer Bit 13

Variable

Optional

Transition Input 14

LD

IN15

D2 - Integer Bit 14

Variable

Optional

Transition Input 15

LD

IN16

D2 - Integer Bit 15

Variable

Optional

Transition Input 16

LD

ENBL

X1 - Byte

Variable

Optional

Enable State Output

LD

STIN

X4 - Byte

Variable

Optional

Input State

LA

STIND

X5 - Byte

Variable

Optional

Set CurrentState to
InputState

LD

OUT1

D4 - Integer Bit 0

Variable

Required

Output State 1

LD

OUT2

D4 - Integer Bit 1

Variable

Optional

Output State 2

LD

OUT3

D4 - Integer Bit 2

Variable

Optional

Output State 3

LD

OUT4

D4 - Integer Bit 3

Variable

Optional

Output State 4

LD

OUT5

D4 - Integer-Bit 4

Variable

Optional

Output State 5

LD

OUT6

D4 - Integer Bit 5

Variable

Optional

Output State 6

LD

OUT7

D4 - Integer Bit 6

Variable

Optional

Output State 7

LD

OUT8

D4 - Integer Bit 7

Variable

Optional

Output State 8

LD

OUT9

D4 - Integer Bit 8

Variable

Optional

Output State 9

LD

OUT10

D4 - Integer Bit 9

Variable

Optional

Output State 10

LD

OUT11

D4 - Integer Bit 10

Variable

Optional

Output State 11

LD

OUT12

D4 - Integer Bit 11

Variable

Optional

Output State 12

LD

OUT13

D4 - Integer Bit 12

Variable

Optional

Output State 13

LD

OUT14

D4 - Integer Bit 13

Variable

Optional

Output State 14

LD

REF_1100

795

8.30 LSSTD

796

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

NOSTA

Y0 - Byte

Data Init

Required

Number of States

OUT15

D4 - Integer Bit 14

Variable

Optional

Output State 15

LD

OUT16

D4 - Integer Bit 15

Variable

Optional

Output State 16

LD

OVRRD

X6 - Byte

Variable

Optional

Logic Override
Indicator

LA

STATE

X7 - Byte

Variable

Optional

Current State

LA

TRMNL

X8 - Byte

Variable

Optional

Terminal State
Status

LD

VTRAN

D5 - Integer

Variable

Optional

Valid Transitions
Indicator

LA

RST

X2 - Byte

Selectable

Optional

Force to
Initial State 1
0=No
1=Yes

LD

SOPT

X3 - Byte

Tunable

Required

Status Options if Bad


Input
1=Always Use
2=Ignore if Bad
3=Use Last Good
Value

TMASK

YP - Integer

Tunable

Required

Transition Mask

REF_1100

8.31 LSTP

8.31 LSTP
Description
The Logic Solver Timed Pulse (LSTP) algorithm generates a True (1) digital output for a specified
time duration when the input makes a positive (False-to-True) transition. The output remains True
even when the input returns to False. The output returns to False only when the elapsed time is
more than the specified time duration. A False to True transition causes the timer to restart from
zero but the output remains True.
Functional Symbol

Algorithm Execution
The LSTP algorithm sets the output True for a specified time. You can use the algorithm to run a
motor for a specified time period.
The following figure shows the timed response of the LSTP algorithm.

REF_1100

797

8.31 LSTP

Status Handling
The algorithm always sets the status of OUT to GoodNonCascade Non-Specific.
Algorithm Definitions

798

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Input Trigger

LD

OUT

Variable

Required

Output

LD

ETIME

Variable

Optional

Elapsed Timer (sec)

LA

TIMED

R2 - Real

Tunable

Required

Output Reaction
Time Delay (sec)

REF_1100

8.32 LSXNOR

8.32 LSXNOR
Description
The Logic Solver Not Exclusive OR (LSXNOR) algorithm performs an exclusive OR of two inputs,
then performs a NOT on that result to produce an output. If neither input is True or if both inputs
are True, the output of the algorithm is True. If either input is False, the output of the algorithm is
False.
Functional Symbol

Algorithm Execution
The following table shows the algorithm output value based on the possible IN1 and IN1
combinations:
LSXNOR algorithm output values
IN1

IN2

OUT

False

False

True

False

True

False

True

False

False

True

True

True

Status Handling
If one or more of the inputs of the LSXNOR algorithm has Bad status, the output has Bad status.
Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input 1

LD

IN2

Variable

Required

Input 2

LD

OUT

Variable

Required

Output

LD

REF_1100

799

8.33 LSXOR

8.33 LSXOR
Description
The Logic Solver Exclusive OR (LSXOR) algorithm performs an exclusive OR of two inputs to
produce an output that is True if one, and only one, of the inputs is true.
Functional Symbol

Algorithm Execution
The following table shows the algorithm output value based on the possible IN1 and IN1
combinations:
LSXOR algorithm output values
IN1

IN2

OUTD

False

False

False

False

True

True

True

False

True

True

True

False

Status Handling
If one or more of the inputs of the LSXOR algorithm has bad status, the output has bad status.
Algorithm Definitions
N AME

800

LC ALG
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN1

Variable

Required

Input 1

LD

IN2

Variable

Required

Input 2

LD

OUT

Variable

Required

Output

LD

REF_1100

8.34 SIS connector algorithm table

8.34 SIS connector algorithm table


SIS connector algorithms are used to connect data between control modules and between Logic
Solvers. These algorithms accept points into sheets from inside and from outside the SIS
network.
ALGORITHM

DESCRIPTION

FUNCTION

SECPARAM (see
page 804)

Connects data

Connects data on sheets that belong to the same SIS Data


Server.

SECPARAMREF
(see page 805)

Connects data

Accepts data from a SECPARAM algorithm on sheets that


belong to the same SIS Data Server.

GSECPARAMREF
(see page 802)

Connects data

Accepts data from a SECPARAM algorithm on sheets that


belong to different SIS Data Servers.

NONSECPARAM
(see page 803)

Connects data

Accepts points into a sheet from outside the SIS network.

REF_1100

801

8.35 GSECPARAMREF

8.35 GSECPARAMREF
Description
The GSECPARAMREF algorithm is used as a connector. GSECPARAMREF accepts points into
a sheet from another sheet that belongs to a different SIS Data Server and accepts data from a
SECPARAM algorithm via fiber-optic repeaters.
The SECPARAM and GSECPARAMREF algorithms operate as a pair. This pair (parameter and
parameter reference) is required when the SIS sheets do not belong to the same SIS Data
Server.
Global secure parameters are similar to SIS secure parameters, but may be published globally.
When using global secure parameters, you must also configure the Logic Solver to publish its
secure parameters globally so that you can connect to other SIS Data Servers. This sends the
secure parameter data to the SISNet Repeater and then to all other Logic Solvers. A total of 32
Logic Solvers can publish globally.
Functional Symbol

Algorithm Definitions

802

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OUT

Variable

Required

Input Point Name

LD

REF_1100

8.36 NONSECPARAM

8.36 NONSECPARAM
Description
The NONSECPARAM algorithm is used as a connector. NONSECPARAM accepts points into a
sheet from outside the SIS network.
Use a page connector on an Ovation sheet to connect to a NONSECPARAM algorithm on SIS
sheet on the SIS network.
No more than 24 nonsecure parameters are allowed per Logic Solver.
Note: Refer to Ovation Safety Instrumented System (SIS) User Guide for more information on
nonsecure parameters.
Functional Symbol

Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OUT

Variable

Required

Input Point
Name

LA, LD,
LP

REF_1100

803

8.37 SECPARAM

8.37 SECPARAM
Description
The SECPARAM algorithm is used as a connector. SECPARAM accepts points into a sheet from
inside a SIS Data Server and transfers data to a SECPARAMREF algorithm.
Use the SECPARAM algorithm when connecting a SIS sheet in a Control Module to another
sheet that belongs to the same SIS Data Server. The SECPARAM algorithm can connect sheets
in the same or different Control Modules or Logic Solvers, as long as they all belong to the same
SIS Data Server.
The SECPARAM and SECPARAMREF algorithms operate as a pair. This pair (parameter and
parameter reference) is required when the SIS sheets belong to the same SIS Data Server.
For Ovation, 16 high density secure parameters are available on a Logic Solver. Secure
parameters can be read by other modules in Logic Solvers on the same SIS Data Server. You
must configure a Logic Solver to publish its secure parameters globally so that you can connect to
other SIS Data Servers (see GSECPARAMREF (see page 802)). This sends the secure
parameter data to the SISNet Repeater and then to all other Logic Solvers. A total of 32 Logic
Solvers can publish globally.
The number of secure parameters a module can contain depends on the number of available
secure parameters available in the Logic Solver the module is assigned to.
Functional Symbol

Algorithm Definition

804

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

IN

Variable

Required

Output Point
Name

LD

REF_1100

8.38 SECPARAMREF

8.38 SECPARAMREF
Description
The SECPARAMREF algorithm is used as a connector, and works in conjunction with the
SECPARAM algorithm. SECPARAMREF accepts points into a sheet that belong to the same SIS
Data Server and accepts data from a SECPARAM algorithm (see page 804).
When a SECPARAM algorithm is used on a sheet, it connects to a SECPARAMREF algorithm on
another sheet that belongs to the same SIS Data Server. (To connect to a sheet that belongs to a
different SIS Data Server, use GSECPARAMREF (see page 802).)
You can have any number of Secure Parameter References in a configuration.
Functional Symbol

Algorithm Definitions
N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

OUT

Variable

Required

Input Point
Name

LD

REF_1100

805

E C T I O N

Migrated special functions

IN THIS SECTION
What are migrated special functions?............................................................................. 807
WDPF to Ovation reference table ................................................................................... 808
WDPF special functions to Ovation algorithms............................................................... 815
What are migration algorithms? ...................................................................................... 821

9.1

What are migrated special functions?


Migration refers to the process of upgrading a system from WDPF to Ovation, while still using the
original Q-Line wiring and/or Q-Line I/O cards. This method of upgrade can save a company time
and money since the existing field wiring does not have to be replaced.
Typically, ladders are used only by Migration projects. After a system has been migrated, any
ladder logic that was used in the original system is preserved in the new Ovation system, and
may need to be edited.
Ladder control can be edited or built with a special user interface provided in the Control Builder.
The ladder control application contains a set of functions which duplicates relay-type circuits,
devices, and the operation sequence of a conventional, electrical relay system.
A ladder is edited or built in a dialog box that consists of a 7 by 9 cell array. Each cell can be
edited to display a shape (such as a coil, contact, or special function) and to store information
about that shape.
These shapes or functions form a relay diagram that depicts the types of inputs, controls, and
outputs. The diagram shows how these user-selected inputs are configured to cause an assigned
device to operate in a desired manner.
The information provided here is applicable for systems that have migrated control and databases
from a WDPF system to an Ovation system. The following table lists the Special Functions names
and parameter interface.

REF_1100

807

9.2 WDPF to Ovation reference table

9.2

WDPF to Ovation reference table


The following table shows the WDPF algorithms (text, graphic, and special functions) with the
equivalent Ovation algorithms. The last column of the table tells you where you can find more
information about the algorithm.
Standard WDPF Algorithms with Equivalent Standard Ovation Algorithms

808

ST AND ARD
WDPF
ALGORITHM

EQUIV ALENT
OV ATION ALGORITHM

SOURCE DOCUMENT

AAFLFLR

AAFLIPFLOP

Ovation Algorithms Reference Manual

ABSVAL

ABSVALUE

Ovation Algorithms Reference Manual

ADD

ADD

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

ALARMMTR

ALARMMON

Ovation Algorithms Reference Manual

ALOG OUT

ALOGOUT

WDPF Special Functions Reference Manual

AND4

AND

Ovation Algorithms Reference Manual

AND REGS

ANDREGS

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

AND TBLS

ANDTBLS

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

ANLOG IN

ANLOGIN

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

ANTILOG

ANTILOG

Ovation Algorithms Reference Manual

ARCCOSIN

ARCCOSINE

Ovation Algorithms Reference Manual

ARCSINE

ARCSINE

Ovation Algorithms Reference Manual

ARCTANGT

ARCTANGENT

Ovation Algorithms Reference Manual

ASC_BIN

ASC_BIN

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

ATREND

ATREND

Ovation Algorithms Reference Manual

AVALGEN

AVALGEN

Ovation Algorithms Reference Manual

AVGNW

AVGNW

WDPF Standard Control Algorithm User Guide

AVGXFM2

AVGXFM2

WDPF Standard Control Algorithm User Guide

AXTOPB

AXTOPB

WDPF Standard Control Algorithm User Guide

BCD_BIN

BCD_BIN

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

BCDNIN

BCDNIN

Ovation Algorithms Reference Manual

BCDNOUT

BCDNOUT

Ovation Algorithms Reference Manual

BIN_ASC

BIN_ASC

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

REF_1100

9.2 WDPF to Ovation reference table

ST AND ARD
WDPF
ALGORITHM

EQUIV ALENT
OV ATION ALGORITHM

SOURCE DOCUMENT

BIN_BCD

BIN_BCD

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

BITCLEAR

BITCLEAR

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

BITL

BITL

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

BITOP

BITOP

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

BITR

BITR

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

BITSET

BITSET

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

BLK MOVE

BLKMOVE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

BTFOLLOW

BTFOLLOW

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

BYT MOVE

BYTMOVE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

COMPDIG

COMPDIG

WDPF Standard Control Algorithm User Guide

COMP REG

COMPREG

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

COMP TBL

COMPTBL

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

COMPARE

COMPARE

Ovation Algorithms Reference Manual

COSINE

COSINE

Ovation Algorithms Reference Manual

CRTMA

CRTMA

WDPF Standard Control Algorithm User Guide

CRTML

CRTML

WDPF Standard Control Algorithm User Guide

DBDLTA

DBDLTA

WDPF Standard Control Algorithm User Guide

DBEQUALS

DBEQUALS

Ovation Algorithms Reference Manual

DELTAW

DELTAW

WDPF Standard Control Algorithm User Guide

DEVICE

DEVICE

Ovation Algorithms Reference Manual

DEVICEX

DEVICEX

Ovation Algorithms Reference Manual

DIGCNTNF

DIGCOUNT

Ovation Algorithms Reference Manual

DIVIDE

W2DIVIDE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

DIVIDEGB

DIVIDEGB

WDPF Standard Control Algorithm User Guide

DN COUNT

W2COUNT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

DRUMA1

ANALOGDRUM

Ovation Algorithms Reference Manual

REF_1100

809

9.2 WDPF to Ovation reference table

810

ST AND ARD
WDPF
ALGORITHM

EQUIV ALENT
OV ATION ALGORITHM

SOURCE DOCUMENT

DRUMA2

ANALOGDRUM

Ovation Algorithms Reference Manual

DRUM CTL

DRUMCTL

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

DRUMD16

DIGDRUM

Ovation Algorithms Reference Manual

DVALGEN

DVALGEN

Ovation Algorithms Reference Manual

FCTGEN

FUNCTION

Ovation Algorithms Reference Manual

FIRST IN

FIRSTIN

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

FRST OUT

FRSTOUT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

FLIPFLRO

FLIPFLRO

WDPF Standard Control Algorithm User Guide

GAINBI

GAINBIAS

Ovation Algorithms Reference Manual

HILMTVFL

HILMTVFL

WDPF Standard Control Algorithm User Guide

HILOLMTV

HILOLMTV

WDPF Standard Control Algorithm User Guide

HILOMTR

HIGHLOWMON

Ovation Algorithms Reference Manual

HISEL10

HISEL10

WDPF Standard Control Algorithm User Guide

HISEL4

HISELECT

Ovation Algorithms Reference Manual

HISIGMTR

HIGHMON

Ovation Algorithms Reference Manual

HISIGMTV

HIGHMON

Ovation Algorithms Reference Manual

HL2MTR

HL2MTR

WDPF Standard Control Algorithm User Guide

INTEGVGR

INTEGVGR

WDPF Standard Control Algorithm User Guide

I DNCNT

W2COUNT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

I ONESHT

W2ONESHT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

I TIMOFF

W2OFFDELAY

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

I TIMON

W2ONDELAY

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

I UPCNT

W2COUNT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

INVERTER

NOT

Ovation Algorithms Reference Manual

LAGVTC

LAGVTC

WDPF Standard Control Algorithm User Guide

LAST OUT

LASTOUT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

LIMIT

LIMIT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

LOG

LOG

Ovation Algorithms Reference Manual

REF_1100

9.2 WDPF to Ovation reference table

ST AND ARD
WDPF
ALGORITHM

EQUIV ALENT
OV ATION ALGORITHM

SOURCE DOCUMENT

LOLMTVFL

LOLMTVFL

WDPF Standard Control Algorithm User Guide

LOSEL10

LOSEL10

WDPF Standard Control Algorithm User Guide

LOSEL4

LOSELECT

Ovation Algorithms Reference Manual

LOSIGMTR

LOWMON

Ovation Algorithms Reference Manual

LOGSIGMTV

LOWMON

Ovation Algorithms Reference Manual

MASSFLOW

MASSFLOW

WDPF Standard Control Algorithm User Guide

MEDSEL2

MEDIANSEL

Ovation Algorithms Reference Manual

MULTGB

MULTGB

WDPF Standard Control Algorithm User Guide

MULTIPLY

W2MULTIPLY

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

MULTSL

MULTSL

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

MULTSR

MULTSR

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

NEGATE

NEGATE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

NLOG

NLOG

Ovation Algorithms Reference Manual

NOTIN

NOT

Ovation Algorithms Reference Manual

ONESHOT2

ONESHOT2

WDPF Standard Control Algorithm User Guide

ONE SHOT

ONESHOT

Ovation Algorithms Reference Manual

ONESHOTR

ONESHOT

Ovation Algorithms Reference Manual

OR4

OR

Ovation Algorithms Reference Manual

OR REGS

ORREGS

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

OR TBLS

ORTBLS

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms" (see page 815)

PACKPB

PACKPB

WDPF Standard Control Algorithm User Guide

PBTOAX

PBTOAX

WDPF Standard Control Algorithm User Guide

PID

W2PID

WDPF Standard Control Algorithm User Guide

PIDVGRR

PIDVGRR

WDPF Standard Control Algorithm User Guide

PIDVLIM

PIDVLIM

WDPF Standard Control Algorithm User Guide

PKEY1TO10

KEYBOARD

Ovation Algorithms Reference Manual

PKEY1TO4

KEYBOARD

Ovation Algorithms Reference Manual

PKEY1TO8

KEYBOARD

Ovation Algorithms Reference Manual

PKEY5TO8

KEYBOARD

Ovation Algorithms Reference Manual

REF_1100

811

9.2 WDPF to Ovation reference table

812

ST AND ARD
WDPF
ALGORITHM

EQUIV ALENT
OV ATION ALGORITHM

SOURCE DOCUMENT

PNT_STAT

PNTSTAT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

POLY

POLYNOMIAL

Ovation Algorithms Reference Manual

PT SHF L

PTSHFL

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

PT SHF R

PTSHFR

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

PULSECNT

PULSECNT

Ovation Algorithms Reference Manual

PULSELAT

PULSELAT

WDPF Standard Control Algorithm User Guide

PVSPSLI

PVSPSLI

WDPF Standard Control Algorithm User Guide

PWDIN

PWDIN

WDPF Standard Control Algorithm User Guide

QAVGN

QAVERAGE

Ovation Algorithms Reference Manual

QBEST4

QBEST4

WDPF Standard Control Algorithm User Guide

QBLOCK

QBLOCK

WDPF Standard Control Algorithm User Guide

QCHK1BAD

QUALITYMON

Ovation Algorithms Reference Manual

QCHK2NG

QCHK2NG

WDPF Standard Control Algorithm User Guide

QCOMPARE

QCOMPARE

WDPF Standard Control Algorithm User Guide

QLATCH

LATCHQUAL

Ovation Algorithms Reference Manual

QLCAIN

SLCAIN

Ovation Algorithms Reference Manual

QLCAOUT

SLCAOUT

Ovation Algorithms Reference Manual

QLCCMD

QLCCMD

WDPF Standard Control Algorithm User Guide

QLCDIN

SLCDIN

Ovation Algorithms Reference Manual

QLCDOUT

SLCDOUT

Ovation Algorithms Reference Manual

QLCGPIN

SLCPIN

Ovation Algorithms Reference Manual

QLCGPOUT

SLCPOUT

Ovation Algorithms Reference Manual

QLCNTWRK

SLCNETWORK

WDPF Standard Control Algorithm User Guide (see


QLCNTWRK algorithm)

QLCSTAT

SLCSTATUS

Ovation Algorithms Reference Manual

QLIPASS

QLIPASS

WDPF Standard Control Algorithm User Guide

QPACMD

QPACMD

Ovation Algorithms Reference Manual

QPACMPAR

QPACMPAR

Ovation Algorithms Reference Manual

QPASTAT

QPASTAT

Ovation Algorithms Reference Manual

QTBCHK

QTBCHK

WDPF Standard Control Algorithm User Guide

QTRANSN

QTRANSN

WDPF Standard Control Algorithm User Guide

QVP

QVP

Ovation Algorithms Reference Manual

QWORST4

QWORST4

WDPF Standard Control Algorithm User Guide

REF_1100

9.2 WDPF to Ovation reference table

ST AND ARD
WDPF
ALGORITHM

EQUIV ALENT
OV ATION ALGORITHM

SOURCE DOCUMENT

RATECHG

RATECHANGE

Ovation Algorithms Reference Manual

RATELIMF

RATELIMIT

Ovation Algorithms Reference Manual

RATEMTR

RATEMON

Ovation Algorithms Reference Manual

RATEMTRV

RATEMON

Ovation Algorithms Reference Manual

RATLIMVF

RATELIMIT

Ovation Algorithms Reference Manual

RESETSUM

RESETSUM

Ovation Algorithms Reference Manual

ROLLOVER

ROLLOVER

WDPF Standard Control Algorithm User Guide

RQAMSP

RQAMSP

WDPF Standard Control Algorithm User Guide

RR COMP

RRCOMP

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

RR MOVE

RRMOVE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

RT COMP

RTCOMP

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

RT MOVE

RTMOVE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

RUNAVG

RUNAVERAGE

Ovation Algorithms Reference Manual

SCALE

SCALE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

SEARCH 1

SEARCH1

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

SEARCH E

SEARCHE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

SINE

SINE

Ovation Algorithms Reference Manual

SM2XMTRS

2XSELECT

Ovation Algorithms Reference Manual

SMOOTH

SMOOTH

Ovation Algorithms Reference Manual

SQROOT

SQROOT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

SQRTGB

SQUAREROOT

Ovation Algorithms Reference Manual

SRCH GE

SRCHGE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

STATMTR

STATMTR

WDPF Standard Control Algorithm User Guide

STEPTIME

STEPTIME

Ovation Algorithms Reference Manual

SUBTRACT

SUBTRACT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

SUM4W

SUM

Ovation Algorithms Reference Manual

SYSTIME

SYSTEMTIME

Ovation Algorithms Reference Manual

TANGT

TANGENT

Ovation Algorithms Reference Manual

REF_1100

813

9.2 WDPF to Ovation reference table

814

ST AND ARD
WDPF
ALGORITHM

EQUIV ALENT
OV ATION ALGORITHM

SOURCE DOCUMENT

TIMECHG

TIMECHANGE

Ovation Algorithms Reference Manual

TIMEDEL

TIMEDEL

WDPF Standard Control Algorithm User Guide

TIMEDET

TIMEDETECT

Ovation Algorithms Reference Manual

TIMEMTR

TIMEMON

Ovation Algorithms Reference Manual

TIME OFF

OFFDELAY

Ovation Algorithms Reference Manual

TIMEOFFR

OFFDELAY

Ovation Algorithms Reference Manual

TIMEONR

ONDELAY

Ovation Algorithms Reference Manual

TIMER ON

ONDELAY

Ovation Algorithms Reference Manual

TR MOVE

TRMOVE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

TRACK

TRACK

WDPF Standard Control Algorithm User Guide

TRANSF

TRANSFER

Ovation Algorithms Reference Manual

TRANSFNI

SELECTOR

Ovation Algorithms Reference Manual

TRANSITN

TRANSITN

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

TRANSLAT

TRANSLATOR

Ovation Algorithms Reference Manual

TRKHOLD

TRKHOLD

WDPF Standard Control Algorithm User Guide

TRNSPTDL

TRANSPORT

Ovation Algorithms Reference Manual

TRUTHTBL

TRUTHTABLE

WDPF Standard Control Algorithm User Guide

TT COMP

TTCOMP

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

TT MOVE

TTMOVE

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

UNPACKPB

UNPACKPB

WDPF Standard Control Algorithm User Guide

UP COUNT

W2COUNT

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

XDELTA

SUM

Ovation Algorithms Reference Manual

XDIVIDE

DIVIDE

Ovation Algorithms Reference Manual

XFCTGEN

FUNCTION

Ovation Algorithms Reference Manual

XFLOW

XFLOW

WDPF Standard Control Algorithm User Guide

XHISEL

HISELECT

Ovation Algorithms Reference Manual

XLEADLAG

LEADLAG

Ovation Algorithms Reference Manual

XLIMIT

GAINBIAS

Ovation Algorithms Reference Manual

XLOSEL

LOSELECT

Ovation Algorithms Reference Manual

XMA2

XMA2

Ovation Algorithms Reference Manual

XMASTER

BALANCER

Ovation Algorithms Reference Manual

REF_1100

9.3 WDPF special functions to Ovation algorithms

9.3

ST AND ARD
WDPF
ALGORITHM

EQUIV ALENT
OV ATION ALGORITHM

SOURCE DOCUMENT

XML2

XML2

Ovation Algorithms Reference Manual

XMULT

MULTIPLY

Ovation Algorithms Reference Manual

XOR2

XOR

Ovation Algorithms Reference Manual

XOR REGS

XORREGS

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

XOR TBLS

XORTBLS

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

XPDSPV

XPDSPV

WDPF Standard Control Algorithm User Guide

XPID

XPID

WDPF Standard Control Algorithm User Guide

XPIDOVD

XPIDOVD

WDPF Standard Control Algorithm User Guide

XPIDSLI

XPIDSLI

WDPF Standard Control Algorithm User Guide

XPIDSPV

XPIDSPV

WDPF Standard Control Algorithm User Guide

XPIDV

XPIDV

WDPF Standard Control Algorithm User Guide

XSQROOT

SQUAREROOT

Ovation Algorithms Reference Manual

XSUM

SUM

Ovation Algorithms Reference Manual

XTRANSF

TRANSFER

Ovation Algorithms Reference Manual

X3STEP

X3STEP

Ovation Algorithms Reference Manual

ZERO TBL

ZEROTBL

WDPF Special Functions Reference Manual and WDPF


special functions to Ovation algorithms (see page 815)

WDPF special functions to Ovation algorithms


The following table lists the original WDPF Special Function parameter and the corresponding
migrated Ovation Special Function parameter names.
WDPF to Ovation Migration
WDPF SPECIAL
FUNCTION

WDPF
P ARAM ETERS

OV ATION
ALGORITHM

OV ATION
P ARAM ETERS

ADD

REG 1

ADD

REG1

ALOG OUT

REG 2

REG2

RESULT

RSLT

SRCE REG
DEST REG

REF_1100

ALOGOUT

SRCE
DEST

815

9.3 WDPF special functions to Ovation algorithms

WDPF SPECIAL
FUNCTION

WDPF
P ARAM ETERS

OV ATION
ALGORITHM

OV ATION
P ARAM ETERS

AND REGS

REG 1

ANDREGS

REG1

AND TBLS

ANLOG IN

REG 2

REG2

RESULT

RSLT

TABLE 1

ANDTBLS

TABLE 2

TBL2

LENGTH

LENG

DEST TBL

DTBL

SRCE REG

ANLOGIN

DEST REG
ASC_BIN

SOURCE

SRCE REG

ASC_BIN

SOURCE

BCD_BIN

SRCE REG

BIN_ASC

REGISTER

BIN_BCD

REGISTER

BITCLEAR

BITR

TABLE

BITL

BITOP

BTFOLLOW

LENG

BIT POS

BITP

REGISTER

BITR

REGISTER

TABLE 1

816

REG
LENG

BITSET

REG
BIT

BLKMOVE

TBL1

TABLE 2

TBL2

LENGTH

LENG

REGISTER

BTFOLLOW

BIT
BYT MOVE

TBLE

LENGTH

BIT
BLK MOVE

REG
LENG

LENGTH
BITSET

REG
BIT

LENGTH
BITOP

SRCE
DEST

BIT
BITL

SRCE
TRGT

DEST REG
BITCLEAR

SRCE
DEST

TARGET
BIN_BCD

SRCE
TRGT

DEST REG
BIN_ASC

SRCE
DEST

TARGET
BCD_BIN

TBL1

SRCE REG

REG
BIT

BYTMOVE

SRCE

MOV PTRN

MOVE

DEST REG

DEST

REF_1100

9.3 WDPF special functions to Ovation algorithms

WDPF SPECIAL
FUNCTION

WDPF
P ARAM ETERS

OV ATION
ALGORITHM

OV ATION
P ARAM ETERS

COMP REG

REGISTER

COMPREG

REG

RESULT
COMP TBL

COMPARE

SRC TBL

RSLT
COMPTBL

DEST TBL

DTBL

LENGTH

LENG

REG 1

COMPARE

REG 2
DIVIDE

DN COUNT

STBL

REG 1

IN1
IN2

W2DIVIDE

REG1

REG 2

REG2

WHOLE

WHOL

REMAINDER

RMDR

PRESET

W2COUNT

ACTUAL

TARG
ACT
DRCT = 0

DRUM CTL

FIRST IN

FRST OUT

I DNCNT

SRC TABL

DRUMCTL

SRCE

LENGTH

LENG

DEST REG

DEST

POINTER

PTR

SOURCE

FIRSTIN

SRCE

TABLE

TBLE

LENGTH

LENG

POINTER

PTR

TABLE

FRSTOUT

TBLE

LENGTH

LENG

REGISTER

REG

POINTER

PTR

PRESET

W2COUNT

ACTUAL

TARG
ACT
DRCT = 0

I ONESHT

I TIMOFF

REF_1100

PRESET

W2ONESHOT

TARG

ACTUAL

ACT

TIMEBASE

BASE

PRESET

W2OFFDELAY

TARG

ACTUAL

ACT

TIMEBASE

BASE

817

9.3 WDPF special functions to Ovation algorithms

WDPF SPECIAL
FUNCTION

WDPF
P ARAM ETERS

OV ATION
ALGORITHM

OV ATION
P ARAM ETERS

I TIMON

PRESET

W2ONDELAY

TARG

I UPCNT

ACTUAL

ACT

TIMEBASE

BASE

PRESET

W2COUNT

ACTUAL

TARG
ACT
DRCT = 1

INVERTER

Not Applicable

NOT

Not Applicable

LAST OUT

TABLE

LASTOUT

TBLE

LIMIT

MULTIPLY

MULTSL

MULTSR

NEGATE

LENGTH

LENG

REGISTER

REG

POINTER

PTR

REGISTER

LIMIT

LOW

LOW

HIGH

HIGH

REG 1

W2MULTIPLY

REG1

REG 2

REG2

RESULT

RSLT

STRT REG

MULTSL

STRT

LENGTH

LENG

DATA REG

DATA

COUNT

CNT

STRT REG

MULTSR

STRT

LENGTH

LENG

DATA REG

DATA

COUNT

CNT

REGISTER

NEGATE

RESULT
ONE SHOT

REG

PRESET

REG
RSLT

ONESHOT

ACTUAL

TARG
ACT
BASE = 0.1

ONESHOTR

PRESET

ONESHOT

ACTUAL

TARG
ACT
BASE = 0.1

OR REGS

818

REG 1

ORREGS

REG1

REG 2

REG2

RESULT

RSLT

REF_1100

9.3 WDPF special functions to Ovation algorithms

WDPF SPECIAL
FUNCTION

WDPF
P ARAM ETERS

OV ATION
ALGORITHM

OV ATION
P ARAM ETERS

OR TBLS

TABLE 1

ORTBLS

TBL1

PNT_STAT

TABLE 2

TBL2

LENGTH

LENG

DEST TBL

DTBL

POINT

PNTSTAT

PNT

BITA

BITA

BITB

BITB

PT SHF L

POINT

PTSHFL

PNT

PT SHF R

POINT

PTSHFR

PNT

RR COMP

REG 1

RRCOMP

REG1

REG 2
RR MOVE

REG 1

REG2
RRMOVE

REG 2
RT COMP

RT MOVE

SCALE

SEARCH 1

SEARCH E

SQROOT

REGISTER

REG2
RTCOMP

REG

TABLE

TBLE

LENGTH

LENG

POINTER

PTR

REGISTER

RTMOVE

REG

TABLE

TBLE

LENGTH

LENG

POINTER

PTR

HI LIM1

SCALE

HI1

LO LIM1

LOW1

DATA 1

DAT1

HI LIM2

HI2

LO LIM2

LOW2

DATA 2

DAT2

TABLE

SEARCH1

TBLE

LENGTH

LENG

POINTER

PTR

REF REG

SEARCHE

REG

TABLE

TBLE

LENGTH

LENG

POINTER

PTR

REGISTER
RESULT

REF_1100

REG1

SQROOT

REG
RSLT

819

9.3 WDPF special functions to Ovation algorithms

WDPF SPECIAL
FUNCTION

WDPF
P ARAM ETERS

OV ATION
ALGORITHM

OV ATION
P ARAM ETERS

SRCH GE

REF REG

SRCHGE

REG

SUBTRACT

TIME OFF

TABLE

TBLE

LENGTH

LENG

POINTER

PTR

REG 1

SUBTRACT

REG1

REG 2

REG2

RESULT

RSLT

PRESET

OFFDELAY

ACTUAL

TARG
ACT
BASE = 0.1

TIMEOFFR

PRESET

OFFDELAY

ACTUAL

TARG
ACT
BASE = 0.1

TIMEONR

PRESET

ONDELAY

ACTUAL

TARG
ACT
BASE = 0.1

TIMER ON

PRESET

ONDELAY

ACTUAL

TARG
ACT
BASE = 0.1

TR MOVE

TABLE

TRMOVE

TBLE

POINTER

PTR

LENGTH

LENG

REGISTER

REG

TRANSITN

IN STATE

TRANSITN

INST

TT COMP

TABLE 1

TTCOMP

TBL1

TT MOVE

UP COUNT

TABLE 2

TBL2

LENGTH

LENG

POINTER

PTR

TABLE 1

TTMOVE

TBL1

TABLE 2

TBL2

LENGTH

LENG

POINTER

PTR

PRESET
ACTUAL

W2COUNT

TARG
ACT
DRCT = 1

820

REF_1100

9.4 What are migration algorithms?

WDPF SPECIAL
FUNCTION

WDPF
P ARAM ETERS

OV ATION
ALGORITHM

OV ATION
P ARAM ETERS

XOR REGS

REG 1

XORREGS

REG1

XOR TBLS

ZERO TBL

REG 2

REG2

RESULT

RSLT

TABLE 1

XORTBLS

TABLE 2

TBL2

LENGTH

LENG

DEST TBL

DTBL

TABLE

ZEROTBL

LENGTH

9.4

TBL1

TBLE
LENG

What are migration algorithms?


The MODETRANS and SETSTATES algorithms are specifically used for migration.

REF_1100

821

9.4 What are migration algorithms?

9.4.1 MODETRANS
Description
The MODETRANS algorithm transfers the Ovation tracking point status bit information (bits 16 32 stored in the 3W field) to an Ovation packed point. The Ovation packed point represents the
WDPF mode point. By recreating the WDPF mode point in Ovation, it allows the custom graphics
to remain the same because the same WDPF point is used.
Note: This is reserved for migration systems use only.
Functional Symbol

Algorithm Definitions

822

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

IN

Input

Variable

Required

OUT

Output

Variable

Required

DEFAULT
VALUE

DESCRIPTION

MIN.
POINT
RECORD

Ovation Tracking
Point

LA

WDPF Mode Point

LP

REF_1100

9.4 What are migration algorithms?

9.4.2 SETSTATES
Description
The SETSTATES algorithm sets tracking bits in the Ovation tracking point based on the inputs
that are connected.
Note: This is reserved for migration systems use only.
Functional Symbol

Algorithm Definitions

N AM E

LC ALG.
RECORD
FIELD

TYPE

REQUIRED/
OPTIONAL

TRK

Input

Variable

Optional

TRKL

Input

Variable

TRKR

Input

LWI

DESCRIPTION

MIN.
POINT
RECORD

--

Tracking bit

LD

Optional

--

Track if Lower bit

LD

Variable

Optional

--

Track if Higher bit

LD

Input

Variable

Optional

--

Lower Inhibit bit

LD

RAI

Input

Variable

Optional

--

Raise Inhibit bit

LD

AUTO

Input

Variable

Optional

--

Auto Mode bit

LD

MAN

Input

Variable

Optional

--

Manual Mode bit

LD

TOUT

Input

Variable

Required

--

Ovation Tracking
point

LA

REF_1100

DEFAULT
VALUE

823

Index
2

2XSELECT 540

DBEQUALS 124
Determining hardware addressing 3
DEVICE 126
Device Control algorithms 24
DEVICESEQ 146
DEVICEX 150
DFIELD 170
DIGCOUNT 171
DIGDRUM 173
DIGITAL DEVICE 178
DIVIDE 199
DROPSTATUS 202
DRPI1A 204
DVALGEN 206

A
AAFLIPFLOP 50
ABSVALUE 52
Alarm Manipulation algorithms 21
ALARMLIMIT 53
ALARMMON 58
Algorithm classification groups 20
Algorithm classifications 19
Algorithm functional symbols 49
Algorithm status and mode settings 4
Algorithm types 654
Algorithms 1
Algorithms that support tracking 13
ANALOG DEVICE (ADEVICE) 60
ANALOGDRUM 63
AND 67
ANNUNCIATOR 69
ANTILOG 72
ARCCOSINE 74
ARCSINE 75
ARCTANGENT 76
Artificial I/O algorithms (signal generators)
21
ASSIGN 77
ATREND 78
AVALGEN 80

B
BALANCER 81
BCDNIN 86
BCDNOUT 88
BILLFLOW 90
Binary to hexadecimal conversion 6
Boolean Logic algorithms 22
Boolean Logic Memory algorithms 23
BUFFER 92

C
CALCBLOCK 106
CALCBLOCKD 114
COMPARE 120
Copyright Notice 2
COSINE 121
COUNTER 122
Custom Calculation algorithms 23

REF_1100

E
Error information 6

F
FACEPLATE 207
FACEPLATE -- DIGITAL DEVICE template
210
FACEPLATE -- MASTATION template 214
FFAI 615
FFAO 618
FFDI 621
FFDO 624
FFISEL/FFISELX 627
FFMAI 635
FFMAO 638
FFMDI 640
FFMDO 644
FFPID 648
FIELD 215
Fieldbus algorithms 25
FIFO 217
Filtering algorithms 26
FIRSTOUT 220
FLIPFLOP 225
Foundation Fieldbus algorithms 613
FUNCTION 227

G
GAINBIAS 231
GASFLOW 235
General algorithm user information 3
GSECPARAMREF 802

825

Index

H
Hardware addressing 3
Hardware Interface algorithms 27
HEARTBEAT 240
HIGHLOWMON 243
HIGHMON 244
HISELECT 245
HSCLTP 250
HSLT 251
HSTVSVP 252
HSVSSTP 253

I
INTERP 254
Introduction to Ovation algorithms 1
Invalid number checking and quality
checking 5

K
KEYBOARD 258

L
LATCHQUAL 261
LEADLAG 263
LEVELCOMP 267
Link Controller Module Interface algorithms
28
LOG 271
Loop Interface Module algorithms 29
LOSELECT 272
LOWMON 277
LSAI 655
LSALM 657
LSAND 659
LSAVTR 661
LSBDE 676
LSBFI 678
LSBFO 681
LSCALC 683
LSCALC Expression Editor 687
LSCEM 697
LSCMP 723
LSDI 725
LSDO 727
LSDVC 734
LSDVTR 746
LSLIM 761
LSMID 764
LSNAND 768
LSNDE 770
LSNOR 772
LSNOT 774
LSOFFD 775
LSOND 777
LSOR 779

826

LSPDE 781
LSRET 783
LSRS 785
LSSEQ 787
LSSR 790
LSSTD 792
LSTP 797
LSXNOR 799
LSXOR 800

M
MAMODE 278
MASTATION 280
MASTERSEQ 289
Mathematical and Statistical algorithms 30
MEDIANSEL 300
Migrated special functions 807
Migration algorithms 821
MODETRANS 822
Modulating Control algorithms 31
Monitor Function algorithms 32
MOTOR (Simple Controlled Motor) 184
MOTOR 2-SPD (Two Speed or
Bi-Directional Controlled Motor) 187
MOTOR 4-SPD (Two Speed and
Bi-Directional Controlled Motor) 191
MOTOR NC (Non-Controlled Motor) 182
MULTIPLY 308

N
NLOG 311
NONSECPARAM 803
NOT 312

O
OFFDELAY 313
ONDELAY 315
ONESHOT 317
Operator Interface algorithms 33
OR 319
Ovation Fieldbus algorithms and function
blocks 613
Ovation SIS Logic Solver algorithm table
652

P
PACK16 320
PID 322
PIDFF 337
PNTSTATUS 350
Point Format Conversion algorithms 34
POLYNOMIAL 352
PREDICTOR 354
PRIORITY 359
PRIORITY Algorithm Package 358
PRIORITY-EXT 375

REF_1100

Index
PRIORITY-REJ 379
Propagated point quality 4
PSLT 382
PSVS 383
Pulse Accumulator Module Interface
algorithms 35
PULSECNT 384
PVSPSLI 548
PWDIN 551

Q
QAVERAGE 385
Q-Line algorithms 547
Q-Line Interface algorithms 36
QLIPASS 554
QPACMD 558
QPACMPAR 564
QPASTAT 566
QSDDEMAND 567
QSDMODE 569
QSRMA 570
QUALITYMON 387
QVP 577

R
RATECHANGE 389
RATELIMIT 391
RATEMON 394
Redundant Signal Processing algorithms
37
RESETSUM 396
RLICONFIG 399
RPACNT 402
RPAWIDTH 403
RSRSTATUS 404
RUNAVERAGE 412
RUNTIME 414
RVPSTATUS 418

S
SAMPLER (Controlled Sampler) 179
SATOSP 421
SECPARAM 804
SECPARAMREF 805
SELECTOR 422
Sequential Logic algorithms 38
SETPOINT 424
SETSTATES 823
Setting tracking signals 16
Signal Compensation algorithms 39
SIMTIME 427
SINE 428
Single precision floating point numbers 6
SIS connector algorithm table 801
SLCAIN 429
SLCAOUT 432

REF_1100

SLCDIN 435
SLCDOUT 439
SLCPIN 443
SLCPOUT 446
SLCSTATUS 450
SMOOTH 454
SOFTSOE 456
SPTOSA 466
SQUAREROOT 467
SSLT 470
Standard algorithm reference pages 45
STAT bits used with function blocks 614
STATISTICS 471
STEAMFLOW 490
STEAMTABLE 492
STEPTIME 495
SUM 500
Summary of Changes 3
System Diagnostic algorithms 40
System Time Function algorithms 40
SYSTEMTIME 504

T
TANGENT 506
Time/Counter Function algorithms 41
TIMECHANGE 507
TIMEDETECT 508
TIMEMON 510
Tracking 10
Tracking (best practices) 12
Tracking (purpose of) 10
Tracking algorithms 42
Tracking examples 15
Tracking process 11
TRANSFER 513
TRANSLATOR 517
TRANSPORT 521
TRNSFINDX 523
TRUTHTBL 524
TSLH 527
TSLP 528
Turbine Interface algorithms 43

U
Understanding the Ovation SIS algorithms
651
Understanding tracking 9
UNPACK16 529
Using algorithm reference pages 48

V
VALVE (Controlled Valve) 196
VALVE NC (Non-Controlled Valve) 181
VCLTP 531
VSLT 532

827

Index

W
WDPF special functions to Ovation
algorithms 815
WDPF to Ovation reference table 808

X
X3STEP 534
XFLOW 580
XMA2 587
XML2 598
XOR 533
XPIDSLI 602

828

REF_1100

S-ar putea să vă placă și