HA082375U003 LIN Blocks Reference Manual
HA082375U003 LIN Blocks Reference Manual
Issue 33
August 2019
HA082375U003
Contents
HA082375U003
Page 3 Issue 33 August 2019
INTRODUCTION Block categories
HA082375U003
Issue 33 August 2019 Page 4
Block categories INTRODUCTION
HA082375U003
Page 5 Issue 33 August 2019
INTRODUCTION Block categories
HA082375U003
Issue 33 August 2019 Page 6
Block categories INTRODUCTION
HA082375U003
Page 7 Issue 33 August 2019
INTRODUCTION Block categories
Index .............................................................................................................................548
HA082375U003
Issue 33 August 2019 Page 8
INTRODUCTION
CHAPTER 1 INTRODUCTION
This manual describes the current core LIN function blocks that are available for developing applications and control
strategies in instruments that can be connected to the Local Instrument Network (LIN). The purpose and workings of
each LIN function block are explained, specification menu parameters are defined and inputs and outputs indicated,
giving detailed information that is required to configure the LIN function blocks.
There are legacy instruments that support LIN function blocks that are no longer used on the current products and
consequently this issue of the LIN Blocks Reference Manual does not cover those blocks. Appendix C provides further
details on legacy instrument support but full details are provided in the LIN Blocks Reference Manual HA028375U003
issue 15 (Vintage).
The LIN function blocks are grouped into categories, each category occupying a complete chapter of the manual. Refer
to the Contents list or the Index to locate an individual LIN function block. Table 2 lists the LIN function block categories
and primary function of each LIN function block.
WHAT IS LIN?
Local Instrument Network or LIN provides a communications network which allows peer-to-peer communications and
file transfer between instruments. For current instruments, it is supported via Ethernet connectivity, but for legacy
instruments, it is also supported via coax, Arcnet and serial communications connections.
Communications between LIN and third party instruments is supported by communication function blocks (e.g. Modbus,
Profibus, etc) and a general purpose Raw Communications block is provided for more obscure protocols, e.g. Weigh
Scales, Bar Code readers, etc.
It is also worth noting that the term ‘LIN’ is used in a general manner to describe or refer to the EurothermSuite DCS
system or elements and/or instruments thereof.
HA082375U003
Page 9 Issue 33 August 2019
INTRODUCTION
WHAT IS LINTOOLS?
LINtools is a powerful multi-purpose Windows-based software package for use both off- and on-line with key features
as listed below:
Offline. LINtools creates and modifies a Local Instrument Network (LIN) based process strategy,
sequences, and actions for a range of target instruments. It is also used to configure instrument properties,
e.g. time-zone, time sync, protocol name, Alarm Suppression, etc.
Online. For monitoring and interacting with control and sequence strategies running in remote instruments
across the ELIN or ALIN providing a versatile commissioning and strategy debugging toolkit.
Online Reconfiguration. Reconfigure an operational instrument via an Ethernet network.
I/O Configuration. Creation and modification of the block-structured I/O subsystem.
Comms Configuration. Configuration of the Data Exchange requirements to third party devices, e.g
Modbus, Profibus etc.
Data Recording Configuration. For recording values from defined groups of parameters, and
configure the appearance of each defined parameter when shown in the ‘Review’ data reporting tool.
Additional configuration of the Instrument Properties provides an archiving strategy for the recorded values.
Setpoint Programming. For creation of the blocks required as an interface to the Programmer Editor.
The blocks are created with a default configuration using a Wizard, but are used to display the configuration of
the Programmer Editor when online.
Intellectual Property Protection. For encryption of specific application file types to prevent the loss
of customer Intellectual Property.
LINtools uses and outputs fully compatible files that can be saved locally to hard disk and transferred to and from target
instruments at high speed over the LIN via ELIN (Ethernet), or for legacy instruments.
HA082375U003
Issue 33 August 2019 Page 10
INTRODUCTION
Symbol Meaning
Connectable as an output from the block to the control strategy
Connectable as an input to the block from the control strategy.
Parameter becomes effectively read-only if connected.
Input and output connectable
Read-only. Exceptions or special conditions may be noted
Available for ‘partial’ access by default* (via T640 series instruments ‘INS’ button)
Alarm field(s)
All other products are considered to be legacy instruments. However the following two instruments fall into a legacy
category in terms of maturity but are still curently used:
The information relating to these instruments has been carried over into this manual and is consistent with the contents
of the legacy instruments issue of this manual, i.e.
LIN Blocks Reference Manual HA028375U003 issue 15 (Vintage)
HA082375U003
Page 11 Issue 33 August 2019
INTRODUCTION Block categories
HA082375U003
Issue 33 August 2019 Page 12
Block categories INTRODUCTION
HA082375U003
Page 13 Issue 33 August 2019
INTRODUCTION Block categories
HA082375U003
Issue 33 August 2019 Page 14
Block categories INTRODUCTION
HA082375U003
Page 15 Issue 33 August 2019
INTRODUCTION Block categories
HA082375U003
Issue 33 August 2019 Page 16
Block categories INTRODUCTION
HA082375U003
Page 17 Issue 33 August 2019
INTRODUCTION Block categories
HA082375U003
Issue 33 August 2019 Page 18
BATCH FUNCTION BLOCKS
HA082375U003
Page 19 Issue 33 August 2019
BATCH FUNCTION BLOCKS SFC_CON
Block function
The SFC (Sequential Function Chart) Control block, allows LIN Sequences to be selected and run during the main
Strategy runtime.
Digital signals wired to the block from the control strategy can load a Sequence file (specified in FileName) to RAM
(Load), run the loaded LIN Sequence (Run), interrupt the LIN Sequence whilst allowing current actions to continue
(Hold), or reset it (Init). The Filepath parameter allows a LIN node and drive to be specified when the source of the LIN
Sequence (.sbf) file is remote.
The SFC_CON block provides alarm outputs warning of file-loading errors (LoadFile), requests for actions to be run that
are already running (Actions), potentially disruptive RAM memory overloads due to sequence processing (Overload), and
also a ‘handshake’ bit (Clear) that goes low only when a sequence file is successfully loaded.
Input priorities
(See the Block specification menu section below for more details on the input parameters.)
Load has priority 1 (highest). If it goes FALSE the LIN Sequence stops and is cleared from RAM whatever
the states of the other inputs.
Run has priority 2, and its state determines whether Hold and Init have any effect. Init has no effect when Run
is TRUE; Hold has no effect when Run is FALSE.
Hold has priority 3. Its state controls the execution of transitions, which can occur only while the sequence is
running. When the LIN Sequence is stopped, Hold has no effect.
Init also has priority 3. Its state controls the resetting of the LIN Sequence, but only when Run is FALSE.
HA082375U003
Issue 33 August 2019 Page 20
SFC_CON BATCH FUNCTION BLOCKS
Block parameters
Symbols used in Table 3 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 21 Issue 33 August 2019
BATCH FUNCTION BLOCKS SFC_CON
Filepath. Specifies the location of the LIN Sequence file named in the FileName parameter. See “Filepath parameter”
on page 547. for details.
Note: It is is strongly recommended that remote filepaths are NOT used and in particular, not redundant processor
configured instruments.
DispBlk. Tagname of the SFC_DISP block (if any) linked to the SFC_CON block. The SFC_DISP block allows a
sequence running in a remote instrument to be displayed/monitored/controlled via LINtools’ ‘Connect’ facility.
The DispBlk field is automatically loaded with the linked SFC_DISP block’s tagname when the link is made from the
SFC_DISP block end, and automatically clears when the link is broken. Also, entering a tagname in DispBlk
automatically enters the corresponding tagname in the SFC_DISP block’s SFCBlock field, to complete the link, see the
SFC_DISP block, for more details.
HA082375U003
Issue 33 August 2019 Page 22
SFC_MON BATCH FUNCTION BLOCKS
Block function
SFC (Sequential Function Chart) Monitor blocks allow the running of sequences to be monitored during the main control
strategy runtime. Each SFC_MON block can monitor up to eight steps in the sequence being controlled by the
corresponding SFC_CON block (named in the SfcBlock parameter). There is no restriction other than available RAM on
the number of SFC_CON and SFC_MON blocks in a strategy. For sequences of greater than eight steps, extra
SFC_MON blocks can be created as needed.
The SFC_MON block has eight trios of parameters indicating the alphanumeric name of the step (Step_A to Step_H),
whether or not the step is currently active (digitals A_X to H_X), and the time (secs) the step has been active (analogues
A_T to H_T). The eight digitals and analogues are available as read-only outputs to the control strategy. The block has
no input connections.
The block provides a special SfcBlock alarm output warning if the SFC_CON block tagname specified in the SFC_MON
block’s SfcBlock field is invalid for any reason (e.g. non-existent or referring to the wrong block type).
Block parameters
Symbols used in Table 4 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 23 Issue 33 August 2019
BATCH FUNCTION BLOCKS SFC_DISP
Block function
The SFC Display block allows a sequence running in a remote instrument to be graphically displayed, monitored, and
controlled via LINtools’ ‘Connect’ facility.
In use, the SFC_DISP block together with an SFC_CON block are run in the remote instrument, linked to each other via
their respective DispBlk and SfcBlock parameters.
Block parameters
Symbols used in Table 5 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 24
SFC_DISP BATCH FUNCTION BLOCKS
Extend. Optional. Used to hold the name of a block type SFC_DISP_EX which defines additional SFC steps and
actions. The SFC_DISP block permits the remote monitoring of five SFC steps and four SFC actions. By using an
SFC_DISP_EX block, an additional 16 steps and actions can be monitored. Multiple SFC_DISP_EX blocks can be
chained together to increase this number further. The Extend parameter contains the name of the first SFC_DISP_EX
block.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. TRUE if memory corrupted, or cached block goes off-line.
Bad_Seq. TRUE if no linked SFC_CON block found, or corrupt sequence in RAM.
More_Sts. TRUE if more than five steps are active, and therefore not all can be displayed in the ActStepA to E
fields. This figure increases by multiples of sixteen for each SFC_DISP_EX block linked to this block (using the
Extend parameter).
More_Act. TRUE if more than four actions are active, and therefore not all can be displayed in the AActionA to
D fields. This figure increases by multiples of sixteen for each SFC_DISP_EX block linked to this block (using the
Extend parameter).
Clear. TRUE if there is no sequence loaded (via the SFC_CON block).
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
AActionA to AActionD. Names of (up to) four currently active actions (including ROOT) in the monitored
sequence, listed in no significant order. For a remotely running sequence using LINtools or a locally running sequence,
the number of actions displayed is not limited.
ClrHlds. Setting ClrHlds TRUE clears all HOLD STEP, ENABLE or DISABLE TRANSITION commands applied
to steps or transitions via the runtime sequence screen. ClrHlds self-resets after use.
Running. Must be TRUE for the SFC_DISP block to be updated. Running sets TRUE automatically whenever a
remote sequence is selected for runtime viewing, and resets to FALSE when the runtime sequence screen is quit.
HA082375U003
Page 25 Issue 33 August 2019
BATCH FUNCTION BLOCKS SFC_DISP_EX
Block function
The SFC_DISP_EX block is an extension to the SFC Display (SFC_DISP) block. It allows for an additional 16 steps and
actions to be graphically displayed, monitored, and controlled via the LINtools’ ‘Connect’ facility. Using only the
SFC_DISP block (without the SFC_DISP_EX block), only five steps and four actions can be displayed.
To extend the number of steps and actions further, additional SFC_DISP_EX blocks can be linked in a daisy-chain
fashion from this block. It is not recommended, however, that multiple SFC_DISP_EX blocks are used. For information
on the SFC_DISP block, refer to page 24.
Block parameters
Symbols used in Table 6 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 26
RECORD BATCH FUNCTION BLOCKS
Block function
This block stores and retrieves sets of analogue and digital values for use in control strategies and sequences, as recipes
for example. It holds up to eight analogue and sixteen digital values (in the A0 - A7 and Bit0 - Bit15 parameters). It can
be triggered (via the Get input), at runtime or during configuration, to load new sets of values into its parameters from
special record files, and to save complete sets of values to these files (via the Put input).
Record files
Record files are created automatically by this block as required (named via its Filename parameter plus extension .RCD)
and can each hold up to 50 complete sets of values (records). The RecordNo parameter, which can be a control strategy
input, specifies the number of the record to be loaded/saved. Records are numbered from 0 to 49 in each record file, and
each record includes an (up to) eight-character text caption.
A record file prepared with a series of records is used to implement a batch control mechanism. Part of each record’s
data may be interpreted as a process number, i.e. to define which sequence is run, the rest of the data being parameters
for that particular process. Stepping through the records in series (via the GetNext parameter) will then run a predefined
series of batches.
Block parameters
Symbols used in Table 7 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 27 Issue 33 August 2019
BATCH FUNCTION BLOCKS RECORD
D. Bitfield of 16 digital values (Bit0 to Bit15) held in the RECORD block, used as for the A0 to A7 parameters.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. TRUE if memory corrupted, or cached block goes off-line.
File. TRUE if Put or Get attempted involving a bad (e.g. non-existent) filename or a bad (e.g. blank or out-of-
range) record number.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
FileName. 8-character (max.) filename for the storage of up to 50 records. The specified filename becomes the root
filename of a record file, with the extension .RCD automatically added. FileName can be changed at runtime, via the
block specification menu, to access other records.
Filepath. Specifies the location of the LIN Sequence file named in the FileName parameter. See “Filepath parameter”
on page 547. for details.
RecordNo. Individual record number (0 to 49) to be accessed in a record file (specified by the FileName parameter)
when the Get, GetNext, or Put operations are triggered. A record file can store up to 50 records, each record holding a
complete set of 8 analogue and 16 digital values, together with a text Caption.
Get. Inputting a rising edge (FALSE-to-TRUE transition) to Get copies the analogue and digital values and text caption
stored in the record specified by FileName, FilePath, and RecordNo to the corresponding parameters of this block (A0 to
A7, D, and Caption). Any existing values are overwritten. Get self-resets at runtime if not connected.
NOTE 1. To Get data from (or Put data to) a record file stored in a remote instrument, a RECORD block
should be local to the instrument where the record file resides, and cached in the instrument that is to Get or
HA082375U003
Issue 33 August 2019 Page 28
RECORD BATCH FUNCTION BLOCKS
Put the data (see Figure 1). In this way the data transfer is by block update, which is faster and less restricted
than server/client file transfer.
Warning: When data is loaded from a file by asserting the Get or GetNext, do not make a Transition in an
SFC depend on file data values (Caption, A0..A7, D) in a duplex system. The devices can desynchronise.
NOTE 2. Never wire to the Get or Put inputs of a cached RECORD block. This is because the corresponding
real block cannot detect the wiring and so self-resets these inputs, in conflict with the cached block’s non-
resetting (wired) inputs. Instead, operate Get or Put manually, or via an SFC statement, or by transmitting
digitals via a DG_CONN block cached in the remote instrument and wired there to the local RECORD block,
as exemplified in Figure 1.
NODE 1 NODE 2
‘Wired’
DG_CONN Block Update DG_CONN
<cached> <local> ‘Get’
GetNext. Making GetNext TRUE loads the next record from the file, i.e. increments RecordNo and then does a ‘Get’.
After record number 49 the number ‘rolls over’ to 0. RecordNo may be preset to 49 (or -1) to allow GetNext to read in
record number 0. GetNext self-resets after use.
Warning: When data is loaded from a file by asserting the Get or GetNext, do not make a Transition in an
SFC depend on file data values (Caption, A0..A7, D) in a duplex system. The devices can desynchronise.
Put. Inputting a rising edge (FALSE-to-TRUE transition) to Put copies the analogue and digital values and text caption
currently stored in the RECORD block (in A0 to A7, D, and Caption) to the record specified by FileName, FilePath, and
RecordNo. Any existing values in the record are overwritten. Put automatically reverts to FALSE.
NOTE 1. Please refer to Notes 1 and 2 in the Get section above.
NOTE 2. Put, when applied to any instrument’s E: drive at runtime can be used only to overwrite an existing
record, not to create a new one.
NOTE 3. The filing system used in older T640 instruments (before v4/1) does not allow files on the E: device
to grow. So, with these instruments, the very first Put must specify a RecordNo equal to the highest record
number that will be required by the strategy. This reserves enough E: drive filing space to accommodate all
record numbers from the specified maximum down to record number zero.
GetOK. Sets TRUE after a Get or GetNext operation is successful. Otherwise GetOK sets FALSE and the File alarm
sets.
IMPORTANT: In T940(X) prior to version 5, and T2550 prior to version 1.2, synchronised duplex devices may
de-synchronise if this field is tested in a Transition.
PutOK. Sets TRUE after a Put operation is successful. Otherwise PutOK sets FALSE and the File alarm sets.
IMPORTANT: In T940(X) prior to version 5, and T2550 prior to version 1.2, synchronised duplex devices may
de-synchronise if this field is tested in a Transition.
HA082375U003
Page 29 Issue 33 August 2019
BATCH FUNCTION BLOCKS DISCREP
Block function
ReqdA
ObtdA
& UpFail
[>DelayA]
-1
ReqdA
Signal ReqdA
to Plant
ObtdA
& DownFail OR FailA
[>DelayA]
Plant Invert
bits
Feedback *
from Plant & Break
[>DelayA]
-1
ObtdA
ReqdA
Feedback
& Drive Plant
ObtdA
DelayA
-1 NotDrive
*Refer to the Block specification menu section for details on the Break parameter.
Figure 2 Block schematic - Channel A
Please refer to the schematic in Figure 2. The DISCREP block provides a means of checking that digitally controlled
plant devices are responding correctly. It does this essentially by comparing signals transmitted to the plant (the
‘required’ states) with corresponding signals fed back from the plant (the ‘obtained’ states). If these signals do not match
in specified ways (allowing for specified time delays), appropriate block output bits and alarms are set which can be used
as warnings, diagnostics, and as links to a control strategy.
Inputs
The block contains four identical and independent channels, A to D, which can be individually enabled/disabled if
required (via the DisableA to DisableD inputs). For clarity, only one of these (Channel A) is schematised in Figure 2.
Each channel also has an input monitoring the digital state required (ReqdA to ReqdD), and an input for the fedback
device state actually obtained (ObtdA to ObtdD). All ‘Reqd’ and ‘Obtd’ inputs can be individually inverted via the
block’s Invert bitfield.
Outputs
Each channel has five digital outputs (grouped in the OutA to OutD bitfields) containing outputs Drive and NotDrive,
UpFail, DownFail, and Break.
These outputs set when certain discrepancies occur between the ‘required’ and ‘obtained’ inputs, schematised in Figure 2
and detailed in the Block specification menu section below. The Drive output can be used for the ‘On/Off’ control of an
actuator. A time delay parameter for each channel (DelayA to DelayD) allows a tolerable delay (e.g. ‘travel time’) to be
defined between a ‘Reqd’ signal changing state and its ‘Obtd’ signal switching accordingly, before an error is flagged.
UpFail sets if the device fails to turn on, and DownFail sets if the device fails to turn off, after the delay. Break is asserted
when ‘Obtd’, having equalled ‘Reqd’, subsequently changes state (after the delay time, to allow for ‘contact bounce’).
Alarm output bits (FailA to FailD) indicate for each channel if its UpFail, DownFail, or Break parameters have been set.
HA082375U003
Issue 33 August 2019 Page 30
DISCREP BATCH FUNCTION BLOCKS
Block parameters
Symbols used in Table 8 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 31 Issue 33 August 2019
BATCH FUNCTION BLOCKS DISCREP
UpFail. TRUE when ‘Reqd’ is TRUE but ‘Obtd’ remains FALSE for longer than the time allowed by ‘Delay’.
See Figure 3.
DownFail. TRUE when ‘Reqd’ is FALSE but ‘Obtd’ remains TRUE for longer than the time allowed by
‘Delay’.
Figure 3 shows how UpFail and DownFail work. In the Figure, ReqdA goes high at time A, starting the DelayA
timer. ObtdA attempts to follow but does not succeed until time C, after some bouncing and beyond the allowed
delay. UpFail sets at B, the end of the delay time, but resets at time C, because ObtdA has now switched on. At D
ReqdA resets, but ObtdA is still high at the end of the newly triggered delay time so DownFail sets at E. ObtdA
resets to the desired state at F and then bounces, causing DownFail to copy the failure pattern.
A D
ReqdA
C F
ObtdA
B
UpFail
DelayA
E
DownFail
DelayA
TIME
Break. Break sets TRUE if ‘Obtd’, having equalled ‘Reqd’ (since ‘Reqd’ last switched), subsequently changes
state. To prevent bouncing contacts triggering an unwanted Break, this output is not asserted until the time specified
by ‘Delay’ has elapsed after ‘Reqd’ last changed state. Figure 3 shows how Break works.
A E
ReqdA
B C D F
ObtdA
G
Break
DelayA DelayA
TIME
In Figure 3, ReqdA goes high at time A, starting the DelayA timer. ObtdA attempts to follow ReqdA and succeeds by
time B, after some bouncing. Break is not set because B is within the delay time specified. However, ObtdA later fails
between times C and D, setting Break for that period. Note that Break is non-latching. At E ReqdA resets, but ObtdA,
despite temporarily resetting by time F, fails again and is left high. So Break sets at time G, the end of the newly triggered
delay period.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. TRUE if memory corrupted, or cached block goes off-line.
FailA to FailD. Fault on Channel A to D, i.e. UpFail, DownFail, or Break TRUE.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
HA082375U003
Issue 33 August 2019 Page 32
RCP_SET BATCH FUNCTION BLOCKS
Block function
The RCP_SET function block controls the recipe set, i.e. file to be used, for a number of recipe lines.
Block parameters
Symbols used in Table 9 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 33 Issue 33 August 2019
BATCH FUNCTION BLOCKS SFC_CON
Block function
The RCP_LINE function block controls the downloading of recipes from a .UYR file in the associated RCP_SET block.
Up to sixteen RCP_LINE blocks may be attached to a single RCP_SET block, via the RCP_SET block’s Line1 to Line16
fields.
Block parameters
Symbols used in Table 10 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 34
SFC_CON BATCH FUNCTION BLOCKS
Alarms.
Failed. This is an alarm representation of the Failed field (described below).
Status. (RESET /DOWNLOAD /COMPLETE /FAILED) Current status of recipe. The options mean:
RESET. No loaded recipe.
DOWNLOAD. Download in progress.
COMPLETE. Download completed successfully.
FAILED. Last download failed.
ACTIVE. TRUE whilst a download is in progress.
FAILED. TRUE if a download attempt fails. This could be for a number of reasons including, some of the LIN database
references in the recipe are invalid, or failed to verify.
HA082375U003
Page 35 Issue 33 August 2019
BATCH CONTROL BLOCKS BAT_CTRL
Block function
The BAT_CTRL function block governs the loading (from a .UYB file) and control of a batch on instruments that have
an inbuilt HMI (for example, the Eycon). It provides a LIN Database environment with a command interface into the
relevant batch engine, along with relevant status and support information.
Block parameters
Symbols used in Table 11 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 36
BAT_CTRL BATCH CONTROL BLOCKS
HA082375U003
Page 37 Issue 33 August 2019
BATCH CONTROL BLOCKS BAT_CTRL
Acceptance of a command guarantees avoidance of repeated acceptance of the same command. Where multiple
command flags are active, they are attempted in descending priority order. (Priorities are shown in Table 11.)
Default Path
RESET
Transitory states shown (RESET command destination state
with dashed outline LOAD
user-configured for each batch)
RESET
Terminating states shown
shaded with bold outline IDLE
*Abbreviated to ‘RESTART’
in the parameter list
START
ABORT
STARTING
ABORT
RUNNING
HOLD
ABORT ABORTING
HOLDING
ABORT
HELD
RESTART
ABORT
RESTARTING
*
HA082375U003
Issue 33 August 2019 Page 38
BAT_CTRL BATCH CONTROL BLOCKS
HA082375U003
Page 39 Issue 33 August 2019
BATCH FUNCTION BLOCKS BATCHCONTROL
Block function
The BATCHCONTROL function block governs the loading (from a .UYB file) and the control of a batch. In addition,
the block provides support for user-defined batch field population and relevant batch status information.
Block parameters
Symbols used in Table 12 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 40
BATCHCONTROL BATCH FUNCTION BLOCKS
Main Page
This page is used to control a batch and provide status information on the current batch (including start and end time
stamps, batch state, and current active phase.)
Filepath. The full path to the specified file. See “Filepath parameter” on page 547. for details.
Filename. Eight-character (max.) filename for the UYB file.
Command. (LOAD/RESET/START/HOLD/RESTART/PAUSE/RESUME/ABORT/UNLOAD) Commands into
the batch controller. Refer to the CmndFlg parameter in Table 12 for more information on these commands. Figure 6
shows how some of the commands work in the batch engine state diagram.
HA082375U003
Page 41 Issue 33 August 2019
BATCH FUNCTION BLOCKS BATCHCONTROL
CmndFlg. Booleans version of the Command parameter. Each CmndFlg field is level-sensitive, but is ignored unless
the batch engine’s state is relevant to the command (see Figure 6).
Acceptance of a command guarantees avoidance of repeated acceptance of the same command. Where multiple
command flags are active, they are attempted in descending priority order. (Priorities are shown in Table 12.)
Note: If a hot start occurs whilst the block is in the IDLE state, the block will revert to the RESET state.
Default Path
Transitory states shown RESET
with dashed outline (RESET command destination state
user-configured for each batch).
Terminating states shown UNLOAD LOAD
Controlled by the “reload on reset”
shaded with bold outline option (line 3 of UYB file).
IDLE
* Abbreviated to ‘RESTART’
in the parameter list START RESET
ABORT
STARTING
ABORT
RUNNING
HOLD
RESTART
ABORT
RESTARTING
*
HA082375U003
Issue 33 August 2019 Page 42
BATCHCONTROL BATCH FUNCTION BLOCKS
For those items "BF_?????" the field BF_ActRQ indicates which of the Data fields (1 - 7) requires action.
CurPhase. The phase number of the batch currently being executed. This field is typically written from a programmer
or SFC. When the batch reaches the end, write 0 to this field to transition to the COMPLETED state.
PhaseNam. The name associated with the current phase number (in the CurPhase parameter) which is defined in
the batch’s UYP file.
RCP_LINE. The name of the associated RCP_LINE function block as specified in line 6 of the batch’s UYB file.
RecipeNo. The value of this parameter matches that of the RecipeNo parameter in the function block referenced by
the RCP_LINE parameter above. If the RCP_LINE parameter is empty, this parameter is set to zero. This parameter is bi-
directional, in that you can write to RecipeNo in either this block or the referenced block, and the other will update to
match.
BatchFields Page
This page is used to define the batch user fields.
Count. The required number of batch user fields (the number of Desc and Data parameters) which will be used and
written to the UHH file (valid values range from 0 to 7). The value is automatically updated when the UYB file is loaded
HA082375U003
Page 43 Issue 33 August 2019
BATCH FUNCTION BLOCKS BATCHCONTROL
and set to match the number of batch user fields defined in the file. Note that the Batch ID, File Name, and Recipe Name
are always written to the UHH file in additional to any batch user fields selected here.
Desc1 to Desc7. The description of a batch user field. This field is presented at the batch HMI as a label indicating
what the user should enter in the DataN field (see below). This field is initialised with a default value from the batch’s
UYB file. Maximum 20 (UTF-16) characters.
Data1 to Data7. The data contents of a batch user field. This field is intended to be presented at the HMI for the
user to enter batch-related metadata. The user is presented with an initialised default value from the batch’s UYB file.
Maximum 60 (UTF-16) characters.
Extend. Not currently implemented.
Note: When the UYB file is unloaded, the Count field is set to 0, and the Desc and Data fields are cleared.
HA082375U003
Issue 33 August 2019 Page 44
COMMUNCATION FUNCTION BLOCKS
HA082375U003
Page 45 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS GW_CON
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 46
GW_CON COMMUNICATION FUNCTION BLOCKS
HA082375U003
Page 47 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS GW_CON
TableOfl. TRUE/FALSE. TRUE if one or more of the tables in this Modbus GW configuration is ‘offline’.
This alarm indicates a Modbus communications error. In slaves, this bit is set TRUE if the table has not been
written to or read from in the period specified by the Timeout parameter, see MODBUS Tools Help,
Part no. HA028988. In masters, the bit sets TRUE if the slave does not respond to the scanning routines within
Timeout seconds, i.e. it is effectively ‘offline’.
This field can be wired into a TOT_CON block’s UserAlrm field (or any other suitable input) to indicate Modbus
communications failures.
TalkThru. TRUE/FALSE. TRUE if the requested Talk-Through Modbus GW-master port cannot be resolved.
This means there is no running Modbus GW-master configuration currently associated with the TalkThru port
defined in the TalkThru field.
Config32. TRUE/FALSE. TRUE if one or more Cfg32Err bits are set TRUE.
PendSave. TRUE/FALSE. TRUE if the image in the instrument memory of this Modbus GW Facility has
been modified, e.g. due to removal of invalid block references, since it was loaded from the .gwf file.
NOTE A save of the .gwf file must be performed to make the file match the contents of memory.
Diag0. This field maps directly to the diagnostic register of the Modbus tables. The function of the fields in the
diagnostic register allow access to specific Modbus tables.
Cfg32Err. Sets TRUE if a 32-bit configuration error or an inconsistent configuration is detected. It is possible to
configure a 32-bit register, see MODBUS Tools Online Help, Part no. HA028988, and then inadvertantly make the
configuration illegal by changing table size, scan count, etc. (a 32-bit configuration error prevents the Modbus
communications from running).
An inconsistent configuration is detected when the function codes specified for a table do not allow for all the read/write
requirements, M S, M S, etc., of each of the registers/digitals within that table, however the Modbus
communications will continue to run.
NOTE If a GW_CON block is not configured, a 32-bit configuration error (Cfg32Err) sets the Disable
continuous scan field in the Modbus GW-master mode diagnostic register, and the Modbus table will not
communicate.
diagReg. Diagnostic register, bits currently allocated: Bit 5, Slave in listen-only mode.
queryDat. Query data as transmitted by function code 8 sub code 0.
ipDelim. Input delimiter as transmitted by function code 8 sub code 3.
BdMsgCt. Master only. Quantity of bad messages received. This increments if the reply received from a Modbus
GW slave contains an instrument number or function code that does not correspond to the request.
CrcErrCt. Quantity of Cyclic Redundancy Check (CRC) errors received.
ErrRspCt. Quantity of error messages sent by slave.
GoodRxCt. Quantity of acceptable messages received.
NonRspCt. Quantity of responses not received. The NonRspCt only increments when a transaction is attempted, but
a response is not returned. This will cause the Alarms.TableOfl field to be set TRUE.
BadChrCt. Quantity of bad character received.
ScanPer. Master communications scan time. Shows the number of XEC time units taken to complete a scan (read)
of each of the configured tables.
NOTE A fault, e.g. cable is disconnected or Slave device loses power, will cause a Master device to lose
communications with a Slave device. Once the fault is fixed, Serial link communications can take up to a
further 30 secs to be re-established. However, it can take up to 60 secs to re-establish Modbus TCP
communications.
HA082375U003
Issue 33 August 2019 Page 48
GW_CON COMMUNICATION FUNCTION BLOCKS
Period. Table maintenance task. Shows the number of XEC time units taken to update all data in the Modbus
registers of all tables. This value depends on the number of parameters mapped to the Modbus address space, and the
number of writes made from the Modbus tables in the Master device to function blocks cached within the Slave device.
If data is written from the Modbus address space to the LIN Database, it is not updated from the LIN Database to the
Modbus address space until the following scan.
NOTE Data can only be updated in one direction each scan, and only from the Modbus address space to the
LIN Database if the value was changed by the Master device. This parameter is not affected if writing to local
function blocks.
used. Table maintenance task. This is the total number of ticks taken to check Tables in the Modbus GW
configuration.
delay. Table maintenance task. The number of ticks between the completion of one scan of all the Tables and starting
the next scan of all the Tables, in XEC time units.
TableCnt. The total number of Tables in the Modbus GW configuration. This value correspondes to the number of
entries in the Tables page of the MODBUS Tools software, see MODBUS Tools Help, Part no. HA028988.
HA082375U003
Page 49 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS GW_TBL
Block function
This block displays information that is normally available in a Modbus configuration's diagnostic table. See the
MODBUS Tools Help, Part no. HA028988, for detailed information on Modbus diagnostic tables.
Using the GW_TBL block is a more efficient way to access Modbus diagnostic data than via a table, and also has the
advantage of releasing one table for the configuration.
NOTE Configuring the GW_TBL block disables the corresponding diagnostic tables, thereby avoiding bit-
value conflicts.
In the block, the TableNo field maps directly to the Modbus table requested as shown below.
LIN Instrument
Modbus Configuration (*.gwf)
Table 4
Table 3
Table 2
Table 1
Diagnostic Register
LIN Database (*.dbf)
Addr Dbase Field Pointer Value
16 STATUS.W Field1 0E9A
DG_CONN block: STATUS 17 STATUS.W Field2 008B
STATUS.W Field4 = 0E73 18 STATUS.W Field3 0AB0
19 STATUS.W Field4 0E73
dbwrite modwrite
Scan Task
Comms
Comms Task Status
Serial Link
HA082375U003
Issue 33 August 2019 Page 50
GW_TBL COMMUNICATION FUNCTION BLOCKS
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 51 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS GW_TBL
HA082375U003
Issue 33 August 2019 Page 52
GWPROFM_CON COMMUNICATION FUNCTION BLOCKS
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 53 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS GWPROFM_CON
HA082375U003
Issue 33 August 2019 Page 54
GWPROFM_CON COMMUNICATION FUNCTION BLOCKS
OpMemUse. Shows the total amount of Cyclic Output space used for all devices.
ScanRate. Shows the total number of µS taken to complete a single update cycle.
TblRate. Shows the total number of µS taken to completely update all tables with the Cyclic process data from all
active slave devices.
NOTE The number of currently active slave devices is shown in ActvDev.
DiagRate. Shows the total number of µS taken to completely update all extended diagnostic tables with the process
data from all active slave devices.
AcycRate. Shows the total number of µS taken to completely update all acyclic tables to and from all active slave
devices.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Asserted, if a sumcheck error in block’s RAM data occurs.
BadFile. Asserted, if the specified .gwf file is corrupt, missing or failed to load. The .gwf file will fail to load if
the GW memory has been exhausted, and is considered corrupt if it was not created using the Windows compatible
Profibus Tools software, see Profibus Tools Help file.
BadDBF. Asserted, if the specified .gwf file is not associated with the curently loaded .dbf file.
BadCfg. Asserted, if the specified .upb file of the Profibus card is corrupt or missing.
ImgSize. Asserted, if the size of the file containing the process data is too large for one or more slaves.
HWError. Asserted, if the process data is not transferred between the slave devices because of an error
condition, as shown in HWState. This will be set TRUE if the Profibus Master is in a fatal error state, and is no
longer exchanging data between any slave devices.
NOTE This error should never occur, but can be resolved by reloading the Profibus GW configuration,
Reload set TRUE, or power cycling the instrument.
ComsErr. Asserted, if process data cannot be exchanged because one or more slaves are currently in an error
condition, derived from ComsErr1 to ComsErr8.
TooMany. Asserted, if all available Profibus GW configurations are already used.
TableFlt. Asserted, if an internal fault is detected in one or more of the tables in this Profibus GW
configuration, i.e. a table is configured incorrectly or contains invalid data.
BadPort. Asserted, if the configured communications port fails to initialise correctly or the specified .gwf file
is attempting to link to a physical port index that does not support the specified Profibus GW configuration. This is
caused when the Port configuration in the Instrument does not correspond to the Port configuration in the
Instrument Properties dialog.
PendSave. Asserted, if the image in the instrument memory of this Profibus GW Facility has been modified,
e.g. due to removal of invalid block references during Online Reconfiguration of Database file, since it was loaded
from the .gwf file.
NOTE A save of the .gwf file must be performed to make the file match the contents of memory.
Memfail. Asserted, if the Profibus Master of the instrument has exceeded its Dual Port RAM limits for input
data, output data or both.
Combined. Asserted, if any alarm is active in the block. Adopts the same status message and priority number
as the block’s highest priority active alarm.
HWState. (Inactive/Loading/Validating/Searching/Starting/Active/Stopping/Stopped/Error) Identifies the current
status of the Profibus hardware. Inactive indicates the master is in the stop state, generally shown during power up. This
parameter shows Loading while the configuration file is being saved to RAM memory, and changes to Validating when
starting to ensure the loaded configuration file is operational. When the configuration file has loaded successfully, the
instrument searches the network, HWState shows Searching, for the devices specified in the configuration file. This field
can remain in this state for a number of seconds while each device is initiated. When the device communications start,
HWState shows Starting. This parameter will show Active when configured devices, are actively communicating via
the network. When communications with the devices are being closed down HWState shows Stopping. This parameter
will remain in this state until all communications, including network maintenance have finished. If the Profibus Master
fails to communicate with any slaves because a fatal error has occurred HWState shows Error.
HA082375U003
Page 55 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS GWPROFM_CON
ResetCnt. (TRUE/FALSE). Resets the CIpFail, COpFail, AIpFail, and AOpFail failure counters to 0 (zero).
CIpFail, COpFail. Shows the total number of failed cyclic data transfer attempts to read and write the process input
and output data, respectively. Each parameter value increments each time the access is denied to the process input or
output data areas, respectively of any devices, slaves.
NOTE The cyclic input and output tables support all data types and contains all the cyclic input and output
data associated with a single device, slave.
AIpFail, AOpFail. Shows the total number of failed acyclic data transfer read and write attempts, respectively.
Each parameter value increments each time the Profibus Master, or Slave, rejects an associated acyclic read and write
attempt.
NOTE 1 The acyclic input and output table supports all data types and contains all the acyclic input and
output data associated with all devices configured.
NOTE 2 Any reads of diagnostics information count as acyclic reads. This means that AIpFail will increment
continually if SlaveAdd is set to an unconfigured slave address.
SlaveAdd. Identifies the device, slave, by address number, for standard Profibus diagnostics inspection. Applicable
standard diagnostic relating to this device are shown in stdDiag1, stdDiag2, stdDiag3, MastAddr, and IdentNum. On later
versions of software, this field defaults on startup to 255. This deliberately-high invalid address disables attempts to read
the standard diagnostics, and thus avoids incrementing the AIpFail count. If SlaveAdd is set to the master address, this
will also disable attempts to read the standard diagnostics.
stdDiag1. Provides 8 subfields used to show the current status of the device defined by SlaveAdd. This corresponds
to Standard Status 1 of the standard Profibus diagnostics inspection, as shown in the table below.
Note Extended Diagnostic bytes are shown in the Profibus Master Configurator.
NonExist. TRUE, if the device did not reply to the last telegram.
NotReady. TRUE, if the device not prepared for data transfer.
CfgFault. TRUE, if the device is signalling a configuration fault.
ExtDiag. TRUE, if the device has valid extended diagnostics data available.
NotSupp. TRUE, if the device does not support a feature requested by the master.
InSlvRes. TRUE, if the device response is not DP, a Profibus protocol, compatible.
ParamFlt. TRUE, if the device reports a parameterisation error.
MstLock. TRUE, if the device is currently exchanging data with another master.
stdDiag2. Provides 8 subfields used to show the current status of the device defined by SlaveAdd. This corresponds
to Standard Status 2 of the standard Profibus diagnostics inspection, as shown in the table below.
ParamReq. TRUE, if the device requires configuration and Parameterisation.
StatDiag. TRUE, if the device is signalling static diagnostics, or the application not ready for data transfer.
DPSlave. TRUE, if the device is a Profibus DP slave.
WdogOn. TRUE, if the watchdog feature is enabled, and will activate the slave specific watchdog action if the
slave determines master-slave communications have failed.
Frzemode. TRUE, if the device is currently operating in freeze mode.
HA082375U003
Issue 33 August 2019 Page 56
GWPROFM_CON COMMUNICATION FUNCTION BLOCKS
HA082375U003
Page 57 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS GWPROFS_CON
Block function
This block displays information about a Profibus Slave GateWay.
Specific Modbus Address registers MUST be configured correctly to ensure devices communicate effectively, see
specific Instrument Handbook for details.
It is designed for use by instruments communicating via a Profibus protocol that have a Profibus card installed and are
operating as Slave devices. A single GWProfS_CON block must be used for each supported instrument type fitted with
a Profibus card.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 58
GWPROFS_CON COMMUNICATION FUNCTION BLOCKS
HA082375U003
Page 59 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS GWPROFS_CON
HA082375U003
Issue 33 August 2019 Page 60
GWPROFS_CON COMMUNICATION FUNCTION BLOCKS
TableOfl. TRUE/FALSE. TRUE if one or more of the tables in this Profibus GW configuration is ‘offline’.
This alarm indicates a Profibus communications error. This is set TRUE if the table has not been written to or read
from in the period specified by the Timeout parameter, see Modbus Tools Help, possibly caused by a failure in the
Profibus Card. Any such failure is indicated by PriStat.SPC3Err, PriStat.ROMCSErr, PriStat.MicroErr or
SecStat.SPC3Err, SecStat.ROMCSErr, SecStat.MicroErr.
PendSave. Asserted, if the image in the instrument memory of this Profibus GW Facility has been modified,
e.g. due to removal of invalid block references, since it was loaded from the .gwf file.
NOTE A save of the .gwf file must be performed to make the file match the contents of memory.
MisMatch. Not Supported. Asserted, if the values shown in InstChck and PriChck do not correspond.
Config. Asserted, if a configuration error has been detected, i.e. SlvAddr is more than 125.
Combined. Asserted, if any alarm is active in the block. Adopts the same status message and priority number
as the block’s highest priority active alarm.
ErrRspCt. The total number of error messages sent by this device, indicated by the address shown in SlveAddr.
GoodRxCt. Quantity of acceptable messages received by device, indicated by the address shown in SlveAddr.
ScanPer. Master communications scan time. Shows the number of time units taken to complete a scan (read) of each
of the configured tables.
NOTE A fault, e.g. cable is disconnected or Slave device loses power, will cause a Master device to lose
communications with a Slave device. Once the fault is fixed, Serial link communications can take up to a
further 30 secs to be re-established. However, it can take up to 60 secs to re-establish communications.
Period. Table maintenance task. Shows the number of time units taken to update all data in the Profibus registers of
all tables. This value depends on the number of parameters mapped to the Modbus address space, and the number of
writes made from the Modbus tables in the Master device to function blocks cached within the Slave device. If data is
written from the Profibus address space to the LIN Database, it is not updated from the LIN Database to the Profibus
address space until the following scan.
NOTE Data can only be updated in one direction each scan, and only from the Profibus address space to the
LIN Database if the value was changed by the Master device. This parameter is not affected if writing to local
function blocks.
used. Table maintenance task. This is the total number of time units taken to check all Tables in the Profibus GW
configuration.
delay. Table maintenance task. The number of time units between the completion of one scan of all the Tables and
starting the next scan of all the Tables.
TableCnt. Shows the total number of Tables in the Profibus GW configuration. This value corresponds to the number
of entries in the Modbus Tools software, see Modbus Tools Help file.
InstStat. Shows the current state of the Primary Slave and Secondary Slave, respectively of a redundant pair defined
in SlveAddr.
Online. TRUE indicates the device is currently active in cyclic commincations.
Primary. TRUE indicates the device is currently operating as the primary Slave of a redundant pair.
RightPro. TRUE indicates the device is currently running the strategy via the processor on the right hand side of
a redundant pair.
RedPair. TRUE indicates the device is currently one of a redundant pair, operating in Duplex mode.
Synched. TRUE indicates the strategy in both Primary Slave and Secondary Slave are synchronised, i.e. the
strategies are the same.
ConfMis. TRUE indicates a conflict between the .gsd file and the .gwf file configuration.
HA082375U003
Page 61 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS RAW_COM
Block function
This block provides low level control of a serial communications port and also has the additional ability to execute
structured text (ST) Actions. The block performs basic functions first and then executes any ST Actions that have been
created. The ST is stored in a file (.STO) and will be dealt with in the same manner as for an ‘Action’ block but cannot
access data outside the Raw Comms block. For protocols that are too complex to be handled using the ST inside the
block an SFC should be used to drive the block.
It is designed for use by instruments supporting serial communication ports, e.g. T2550, Eycon 10/20 Visual Supervisor.
Also see the Raw Comms User Guide, HA030511 for detailed information on applications and examples.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 62
RAW_COM COMMUNICATION FUNCTION BLOCKS
The above diagram depicts the functional relationship between the RAW_COM function block, communications port and
associated UART. The communications port fields (e.g. Baud, Parity, etc) are configured using the Instrument Options
Editor and are therefore ‘Read only’ from within the RAW_COM function block.
HA082375U003
Page 63 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS RAW_COM
HA082375U003
Issue 33 August 2019 Page 64
RAW_COM COMMUNICATION FUNCTION BLOCKS
DataBits. The value of this read only field is configured using the Instrument Options Editor. It sets the number of
bits per character for both receive and transmit. If this is set less than 8 then the most significant (8 - DataBits) bits will
be ignored when sending and forced to zero when receiving. The number of bits per character supported in this field are
5, 6, 7 or 8.
NOTE. Current hardware does not support 5 or 6 Data Bits.
StopBits. The value of this read only field is configured using the Instrument Options Editor. It sets the number of
stop bits expected by the receiver and sent by the transmitter. The number of stop bits supported are 1 or 2.
Alarms.
Software. Asserted, if a sumcheck error in block’s RAM data occurs or caching failure.
NoAction. The Structured Text (ST) Action as defined in ActName above or Filename.STO cannot be found.
BadActn. Set if an ST evaluation error occurs at runtime
BadDev. The configured device is invalid, e.g. Requires configuration using the Instrument Options Editor.
For Visual Supervisor only, can also mean a Raw Comms licensing failure.
Device. A low-level communication device failure, e.g. Parity error. The status field provides details of the
failure.
UserAlm1. Controlled from structured text.
UserAlm2. Controlled from structured text.
UserAlm3. Controlled from structured text.
UserAlm4. Controlled from structured text.
Combined. True if any alarm is active. It adopts the same status message and priority number as the block's
highest priority active alarm.
Status. Status bits indicate the following error conditions. 0 = no error has occurred
RxChLost. An internal receive buffer has overflowed causing characters to be lost.
This may also be caused by very heavily loaded applications and/or large comms packet sizes , especially if above
512 bytes.
RxParity. A parity error was detected on a received character.
RxOver. An overrun error was detected on a received character.
RxFrame. A framing error was detected on a received character.
RxBreak. A break condition has been detected on the receive line (not supported on current hardware).
RxFrcErr. Rx_State below has been set to ERROR to force an error.
TxChLost. An attempt has been made to send a new message before the last transmission has completed.
TxFrcErr. Tx_State above has been set to ERROR to force an error.
Rx_Value. This is the character buffer used to hold the character sequence received from the serial port. The buffer
can contain up to 1020 characters. It is volatile.
Rx_State. Current Receive status. Values are OK, PENDING, ERROR, READ and FLUSH. Reception can be initiated
by setting this parameter to READ. The state will automatically change to PENDING until reception is completed. On
completion it changes to OK, or ERROR if an error occured during reception. Setting it to FLUSH clears any characters
that have been received and are waiting to be copied into the Rx_Value buffer. Characters already in the Rx_Value buffer
are not affected.
Rx_Trig. This is provided to allow control of the Raw Comms block by wiring. Setting this parameter TRUE initiates
reception.
Rx_Flush. Similar to Rx_Trig except that it conditions the Rx_State to FLUSH.
Rx_Max. This specifies the maximum number of characters held in the internal receive buffer before being passed
on to the block's Rx_Value buffer. The value should be in the range 1-1020. 1020 is the maximum length of the Rx_Value
message.
HA082375U003
Page 65 Issue 33 August 2019
COMMUNICATION FUNCTION BLOCKS RAW_COM
NOTE. Characters are passed to the Rx_Value buffer either on the maximum number of characters as
defined in Rx_Max being reached or a termination sequence of characters has been received as defined in
Rx_Term.
Rx_Term. This specifies a termination sequence of characters that is used to identify the end of a line of input. If
Rx_Term is left blank the input will be read from an internal receive buffer into the Rx_Value buffer until Rx_Max
characters have been received. If Options.AltTerm is set, then these characters are treated as alternatives rather than a
sequence.
Rx_TermN. If Rx_Term is not blank, this specifies an additional number of characters to be read after the termination
sequence has been received. This is intended to simplify receiving a message which for example has a terminating
sequence followed by a CRC or BCC. The limits for this field are 0 - 1020.
Rx_Del. Specifies an optional 'delete' character, to be applied to the incoming character stream if Options.Rx_Del is
set. This would typically be used when communicating with a terminal of some kind.
Rx_DelEc. If Options.Echo and Options.Rx_Del are both set, this specifies the string to be transmitted whenever an
actual deletion takes place as a result of the character Rx_Del being received. This is typically "$08$20$08", i.e. back-
space, space, back-space.
NOTE. If a character is not available for deletion, then the defined string in Rx_DelEc is not transmitted.
Variables. General Purpose Variables accessed by the associated Raw Comms structured text and/or from external
SFCs. They can be used as workspace, to hold results and to accept input values.
Buffer1 to Buffer4. These provide access to four character buffers which can be used as workspace by the
associated Raw Comms structured text or from an external SFC. Each buffer can contain up to 256 characters.
Byte1 to Byte4. Four bitfields, each of which can be treated as an 8-bit integer or 8 separate Booleans.
Word1 to Word4. Four bitfields, each of which can be treated as a 16-bit integer or 16 separate Booleans.
I1to I4. Four 32-bit signed integer variables.
DwnTmr1 to DwnTmr4. Four down-timers which indicate seconds as floating point. When non-zero, they count
down automatically (updating at every block update) until they reach zero. They can be written to and read at any time.
A1 to A12. Twelve floating point variables.
HA082375U003
Issue 33 August 2019 Page 66
CONDITION FUNCITON BLOCKS
HA082375U003
Page 67 Issue 33 August 2019
CONDITION FUNCTION BLOCKS INVERT
Block function
Pleasae refer to the schematic in Figure 9. The INVERT block inverts the sense of an analogue input signal, offsets it by
the quantity (HR + LR).
Offset by
PV -1 OP
HR + LR
Block parameters
Symbols used in Table 20 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 68
CHAR CONDITION FUNCTION BLOCKS
Block function
Characterise
Y (X16, Y16)
X1 - X16 Y1 - Y16
PV OP
X
(X1, Y1)
Please refer to the schematic in Figure 10. The CHAR (Characteriser) block provides a 4-quadrant analogue characteriser
function with 16 breakpoints, entered as X (input) and Y (output) co-ordinate pairs. The X co-ordinates must increase
monotonically, but the Y co-ordinates can have ascending, descending, or recurrent values. Any spare X co-ordinates
are automatically filled up to the sixteenth point by copying the highest X-value entered in the table.
The characteristic curve is interpolated linearly between breakpoints. Inputs less than X1 or greater than X16 are output
as Y1 or Y16, respectively (as suggested in the schematic).
Block parameters
Symbols used in Table 21 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 69 Issue 33 August 2019
CONDITION FUNCTION BLOCKS UCHAR
Block function
Unlike most other blocks, the UCHAR block is not intended for interconnection with other blocks in the database; instead
it provides the data store for a 16 breakpoint characterisation which may be used by a single or multiple number of
analogue input blocks. This is achieved by setting the ‘Char’ field to ‘User’ and by entering the UCHAR block name in
the UserChar field of the analogue input block (e.g. ANIN, TCOUPLE, RTD, FULL_TC8, AN_IP, ANIN_6, RTD_6,
AI_UIO).
The block supports 16 X (input) / Y (output) pairs expressed in engineering units where the X & Y values must be
monotonic.
For some legacy products an older different version of this block is supported which uses normalised integer values - see
Lin Blocks Reference Manual HA082375U003 issue 15 (Vintage).
NOTE. A UCHAR block used to linearise thermocouple measurements involving cold junction
compensation should include a point at the cold junction temperature (e.g. 0°C, 0mV).
Block parameters
Symbols used in Table 22 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 32 May 2019 Page 70
FILTER CONDITION FUNCTION BLOCKS
Block function
Init Filter τ
Filter:
PV OP
/(1+ τs)
Please refer to the schematic in Figure 11. The FILTER block implements a first order filter function which can be
expressed as:
OP = PV/(1+τs)
where τ is the filter time constant and s the Laplace Operator d( )/dt. In practice the algorithm recalculates OP every
block sample time as:
where -
OPn = OP at current iteration of algorithm
OPn-1 = OP at previous iteration of algorithm
Ts = Block sample time (seconds)
τ = Filter time constant (seconds). (See Figure 12)
PVn = PV at current iteration of algorithm
Input
PV
100 %
Output
OP
63.2 %
0%
τ
TIME (secs)
Block parameters
Symbols used in Table 23 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 71 Issue 33 August 2019
CONDITION FUNCTION BLOCKS FILTER
HA082375U003
Issue 33 August 2019 Page 72
LEADLAG CONDITION FUNCTION BLOCKS
Block function
Init Filter τ
Lead-Lag: Limit by
PV OP
τ
HL, LL
X
( )
( τs)
DynGain
τ1/τ
Please refer to the schematic in Figure 13. The Lead/Lag block allows the output to lead or lag the measurement in the
frequency domain. The block function can be expressed as:
( τ )
( τs)
where τ1 is the lead time constant, τ the filter (lag) time constant, and s the Laplace Operator d( )/dt.
Dynamic gain (the DynGain parameter) is defined as τ1/τ. Note that setting the dynamic gain to 0 converts the lead-lag
function into a first order filter, and setting it to 1 makes OP track PV.
Block parameters
Symbols used in Table 24 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 73 Issue 33 August 2019
CONDITION FUNCTION BLOCKS LEADLAG
Init. Initialisation. Initialises the block by setting OP = OPn-1 = PV when Init is TRUE. Init resets to FALSE after
acting (write-only).
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
HA082375U003
Issue 33 August 2019 Page 74
AN_ALARM CONDITION FUNCTION BLOCKS
Block function
SetPoint
TimeBase
Please refer to the schematic in Figure 14. The Analogue Alarm block offers additional alarm capabilities to those built
into some of the function blocks. The block can be set to flag either absolute, deviation, or rate alarms, with an adjustable
hysteresis band and two independent pairs of alarm levels.
Block parameters
Symbols used in Table 25 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 75 Issue 33 August 2019
CONDITION FUNCTION BLOCKS AN_ALARM
HiHigh, High, & Low, LoLow. High High, High, and Low Low, Low alarm levels. The action of these four
multipurpose parameters depends on which type of alarm function is selected (via the Type parameter):
Absolute Alarms. Alarms are set if the block input PV moves outside defined levels:
HiHighAl = TRUE when PV > HiHigh
HighAl = TRUE when PV > High
LowAl = TRUE when PV < Low
LoLowAl = TRUE when PV < LoLow
An alarm is not reset immediately PV returns to the alarm level - PV must be inside the level by a margin equal to
the Hyst parameter before the alarm resets. This hysteresis permits clean transitions into and out of the alarm
condition.
Deviation Alarms. The high alarms are set when the positive deviation exceeds the defined levels. The low
alarms are set when the negative deviation exceeds the levels:
HiHighAl = TRUE when (PV–SetPoint) > HiHigh
HighAl = TRUE when (PV–SetPoint) > High
LowAl = TRUE when (SetPoint–PV) > Low
LoLowAl = TRUE when (SetPoint–PV) > LoLow.
Hysteresis is applied to deviation values as it is to PV in absolute alarms.
Rate Alarms. The high alarms are set when PV’s rate of increase exceeds the defined levels. The low alarms
are set when PV’s rate exceeds the defined level and remains until the PV’s rate clears the defined level:
HiHighAl = TRUE when dPV/dt > HiHigh
HighAl = TRUE when dPV/dt > High
LowAl = TRUE when –dPV/dt > Low
LoLowAl = TRUE when –dPV/dt > LoLow.
The resolution of this function is dependent on the scanning time of PV.
Hysteresis is applied to changes in dPV/dt in a corresponding way to other alarms, but for rate alarms the Hyst
parameter is expressed in engineering units per second or minute (defined by TimeBase).
Deviatn. Deviation (Error), defined as PV–SetPoint.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
HiHighAl. High High alarm.
HighAl. High alarm.
LowAl. Low alarm.
LoLowAl. Low Low alarm.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Disable. This digital input disables alarm annunciation. (Software alarm not affected.)
HA082375U003
Issue 33 August 2019 Page 76
DIGALARM CONDITION FUNCTION BLOCKS
Invert n
Alarm Output
In_n 1 = Alarm
DIGAI n
-1
Please refer to the schematic in Figure 15, which shows only one (the nth) of the eight block channels. The Digital Alarm
block allows logic signals within a control strategy to activate alarms. The alarm states of the eight triggering input
signals can be individually set to TRUE or FALSE (via the Invert parameter), and can be collectively enabled or disabled.
Block parameters
Symbols used in Table 26 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 77 Issue 33 August 2019
CONDITION FUNCTION BLOCKS LEAD_LAG
Block function
Hold
PV Deriv Bias HL
Deriv
A A Hold
Hold
A*B A+B Apply
Hold limits
Lead/lag
B B
Gain
B B LL
A A
A/B A-B OP
Init
Init
Please refer to the schematic in Figure 16. The LEAD_LAG block provides a lead/lag filter for use in feed-forward
computations, or for setting up plant models.
Lead/lag operation. In lead/lag operation (Options.Deriv FALSE), as a conventional lead/lag filter, the block
output OP and input PV are related by
L L L
L L L
HA082375U003
Issue 33 August 2019 Page 78
LEAD_LAG CONDITION FUNCTION BLOCKS
Block parameters
Symbols used in Table 27 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 79 Issue 33 August 2019
CONDITION FUNCTION BLOCKS RANGE
Block function
HR_In
Invert nm HR_out
FALSE
Input Range
De-range Output
100% – TRUE
LR_In input%
LR_out
Please refer to the schematic in Figure 17. The RANGE block re-ranges an analogue input.
Block parameters
Symbols used in Table 28 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 80
FLOWCOMP CONDITION FUNCTION BLOCKS
Block function
Pfault
PressIn FALSE
TRUE
DefaultP ScalingK
Tabs
DCFIndx
Calculate
Tref Calculate
density
DensCorF corrected Flow
correction
Pref flow rate
factor
Primary
Pabs
TRUE PrimIndx
DefaultT
FALSE
TempIn
Tfault
Please refer to the schematic in Figure 18. The FLOWCOMP block converts a raw gas flow measurement into a
pressure- and temperature-corrected flow output signal.
The block calculates a density correction factor from pressure and temperature measurements, and uses this to
compensate the raw flow measurement. User-set default pressure and temperature values are automatically substituted
if digital inputs to the block indicate these measurements are faulty.
The density correction factor is calculated as
(Tref + Tabs) x ({PressIn OR DefaultP} + Pabs)
DensCorF =
(TempIn OR DefaultT} + Tabs) x ({Pref + Pabs)
HA082375U003
Page 81 Issue 33 August 2019
CONDITION FUNCTION BLOCKS FLOWCOMP
Block parameters
Symbols used in Table 29 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 82
FLOWCOMP CONDITION FUNCTION BLOCKS
Flow. The scaled and corrected flow rate, derived from the raw measured flow rate after compensation for pressure
and temperature variations.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Faults.
Pfault. A TRUE input to this parameter causes DefaultP to be substituted for PressIn in the density correction
factor calculation.
Tfault. A TRUE input to this parameter causes DefaultT to be substituted for TempIn in the density correction
factor calculation.
PrimIndx. (1/2, 1, 3/2, 5/2) The power to which the raw flow measurement value Primary is raised in the corrected
flow calculation.
DCFIndx. (0, 1/2, 1, –1/2, –1) The power to which the density correction factor DensCorF is raised in the corrected
flow calculation.
HA082375U003
Page 83 Issue 33 August 2019
CONDITION FUNCTION BLOCKS GASCONC
Block function
The GASCONC block contains the gas concentration values for use in calculations of compressibility and
supercompressibility of natural gas mixtures - particularly the AGA8 (American Gas Association Report #8) calculations.
The calculations themselves are carried out in an associated block - e.g. the AGA8DATA block, separately described.
The GASCONC block stores the concentrations of up to 21 gases, expressed in Mole percentage units. Fields are
provided that report the total gas Mole% (Total), and allow a tolerance on this total to be specified (TotTol). An alarm is
tripped (BadTotal) if the total percentage of the entered data differs from 100% by more than this tolerance. The block
also checks the data against AGA8 Normal and Expanded range limits (Table 1 of the Report). Alarms trip (NotNorm
and OutRange resp.) if any entry exceeds these limits.
NOTE. ‘Normal’ range limits define concentration limits for each gas within which the AGA8 calculations
produce their most accurate results. ‘Expanded’ range limits define concentration limits beyond which the
accuracy of the computation is not quoted in the Report, and use of these values is not recommended.
The block holds two levels of data - the visible data entered in the Mole% fields, and a (hidden) validated and normalised
copy of this data that is actually being used by the associated AGA8DATA block(s) to perform the calculations.
Normally these two sets of data are effectively identical, but they can differ if new values have been entered. A parameter
- GasData - acts as a monitor/control interface between the two sets of data, alerting the operator if they differ, and letting
him either put the new data into use, or recall the current in-use data to overwrite the visible block fields. The new total
Mole% and range limits are checked whenever an update of the in-use data is requested via GasData. If the total Mole%
is out of tolerance, the alarm trips and GasData reports ‘Invalid’. In this case the new data is not allowed to update the
current in-use data. Instead, the calculations continue using the unchanged in-use data until the operator enters valid data
or recalls the in-use data to the block fields.
The GasData field can be configured to load a default set of data and automatically initiate calculations immediately if a
cold start occurs.
NOTE. A single GASCONC block can act as the data source for many AGA8DATA blocks.
HA082375U003
Issue 33 August 2019 Page 84
GASCONC CONDITION FUNCTION BLOCKS
Block parameters
Symbols used in Table 30 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
The alarm clears only when an update is selected with a set of entered data having a total Mole% value that is within
tolerance. While the alarm is asserted, the data set is not accepted and calculations continue using old values.
NotNorm. Trips if an update is selected and at least one of the gas Mole% values is outside the AGA8 Normal
Range limits. The alarm clears only when an update is selected with a set of entered values which are all within
their Normal Range limits. Note that although NotNorm trips, the data is nevertheless accepted for use in the
calculations. The operator must check the alarm and decide if the in-use data needs to be modified.
OutRange. Trips if an update is selected and at least one of the gas concentration values is outside the AGA8
Expanded Range limits. The alarm clears only when an update is selected with all composition values inside their
Expanded Range limits. Note that although OutRange trips, the data is accepted and the operator must decide if the
in-use data needs to be modified.
HA082375U003
Page 85 Issue 33 August 2019
CONDITION FUNCTION BLOCKS GASCONC
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Total. Sum of all 21 entered Mole percentages in the Methane to Argon fields. The BadTotal alarm trips if this sum
differs from 100.0% by more than the tolerance specified in the TotTol field.
NOTE. Despite the allowed tolerance in the entered data, the block automatically normalises the in-use data
so that the Mole% figures actually used by the calculations always add up to exactly 100.0%.
TotTol. Specifies an allowed tolerance in the value of Total. (See NOTE above.)
GasData. (Waiting/NoAction/Changed/Invalid/Update/Recall). This field acts as an operator monitor/control
interface between the visible data entered in the Methane to Argon fields, and the (hidden) validated copy of this data
actually in use by the associated AGA8DATA block(s). (See the Block function section above). Figure 19 shows the
relationships between the items in the GasData menu. The items are as follows.
Waiting. Indicates that there is no data in the hidden in-use data area, and therefore that calculations cannot be
performed by any associated AGA8DATA blocks. The block is waiting for the operator to load data from the
visible fields to the in-use area, via the ‘Update’ menu item (see below). This situation can arise after a cold start,
but is avoided by saving the LIN database with default composition data entered, and the GasData parameter set to
‘Update’. Then, immediately after a cold start the default data automatically loads and calculations begin. Note
that altering any data in the gas concentration fields switches GasData’s state from ‘Waiting’ to ‘Changed’, but
calculations cannot start until valid data is copied to the in-use area.
no in-use data
Waiting
change
data
Changed
change
data
NoAction
in-us
l’ valid e dat
‘Tota a
Update Recall
‘Tota data
l’ inv -use
alid no in
Invalid
NoAction. The normal running state of the block (shaded in Figure 19). Indicates that calculations are running
and the visible entered composition data and the hidden in-use data are the same. No operator action is required.
Changed. Indicates that the visible data entered in the Mole% fields is different from the data in the hidden in-
use fields, on which the calculations are based. ‘Changed’ remains displayed until the operator takes further action.
Copying the in-use data back to the visible fields (via the ‘Recall’ command) restores the ‘Changed’ state to
‘NoAction’. Alternatively, the changed data may be loaded to the in-use area via the ‘Update’ command, see below.
The state entered by GasData will then depend on whether or not the changed data proves to be valid (see next).
HA082375U003
Issue 33 August 2019 Page 86
GASCONC CONDITION FUNCTION BLOCKS
Invalid. Indicates that the data the operator is attempting to load to the in-use area (via ‘Update’) has a Total
value that differs from 100.0% by more than the specified tolerance TotTol. I.e. its Mole% values do not add up to
100%, and so cannot be used. Instead, the calculations continue using the existing (hidden) data, and the BadTotal
alarm is raised. The state remains ‘Invalid’ until the operator enters a set of valid data and requests another
‘Update’. Alternatively, ‘Recall’ may be used to restore the valid in-use data to the visible fields.
Update. ‘Update’ can be selected at any time, whatever state is displayed in the GasData field. This command
is used by the operator to overwrite the current (hidden) in-use data with new data in the visible block fields.
Entering ‘Update’ initiates a routine that tests each value in the block’s gas concentration fields against the AGA8
Normal and Expanded Range limits. Alarms are raised if any values are out of range (NotNorm and OutRange) but
this does not prevent the new data from being deemed valid. The routine also checks the new Total value against
100% (plus specified tolerance) to determine if the composition total is valid. If this test fails, the BadTotal alarm is
raised, GasData adopts the ‘Invalid’ state, and the new data is rejected.
Otherwise, the valid (even if out of range) data is loaded to the in-use area and GasData reverts to ‘NoAction’, its
normal running state. The operator must decide how any NotNorm and/or OutRange alarm(s) need responding to.
NOTE. To ensure that calculations start immediately after a cold start of the system, save the LIN database with
default composition data entered and GasData set to ‘Update’. See the ‘Waiting’ section above.
Recall. ‘Recall’ can be selected at any time, whatever state is displayed in the GasData field. This command
copies the current (hidden) in-use data to the visible block concentration fields. GasData then displays ‘NoAction’,
the block’s normal running state. Note that if there is no in-use data in the hidden area for any reason, e.g. after a
cold start - selecting ‘Recall’ causes GasData to adopt the ‘Invalid’ state.
HA082375U003
Page 87 Issue 33 August 2019
CONDITION FUNCTION BLOCKS AGA8DATA
Block function
Calculate mean
GASCONC molecular weight MolWt
ConcBlk block MolWt
‘in-use data’
PressTol
Ignore
Faults Compute molar
changes d
Convert to density d & line
<PressTol,
PressIn absolute compressibility
<TempTol Zine
units Zine (AGA8)
and if
TempIn Faults
Calculate
TempTol Pabs
Version super-compressibility F
Tabs F= √(Zbase/Zline)
Compute base
Pref Convert to compressibility
absolute Zine Zbase
Tref units (AGA8)
Please refer to the schematic in Figure 20. The AGA8DATA block uses the AGA8 (American Gas Association Report
#8) set of equations to calculate the compressibility (Zline) and supercompressibility (F) of a natural gas mixture, from
its measured line pressure (PressIn) and line temperature (TempIn). An associated GASCONC block, specified in the
ConcBlck field, provides the mixture’s composition data. The block also calculates the mixture’s base compressibility
(Zbase), molar density (d) and mean molecular weight (MolWt).
Digital inputs are available (via the Faults field) for connecting to I/O fail outputs indicating faulty pressure and/or
temperature measurements. When set they cause the affected readings to be ignored and the calculations to use the
previous (good) values.
Pressure and temperature tolerances (PressTol, TempTol) can be specified that reduce the computational overhead on the
instrument. Changes smaller than these values are treated as ‘noise’ and ignored by the block, so preventing needless re-
evaluation of the pressure/temperature-dependent parts of the AGA8 calculation.
Alarms are provided that trip if the associated GASCONC block cannot be accessed, if calculations have stopped, if the
density calculation fails, or if the calculated compressibilities fall outside an acceptable range.
Accuracy. The AGA8DATA/GASCONC blocks have been tested for computational accuracy by inputting the full
range of natural gas compositions, pressures, and temperatures given in Tables A.3-1 and A.5-2 in Appendix A of the
AGA8 Report. The results produced agreed with those quoted in the Report tables to better than 0.001%, except for the
‘high-CO2’ case, where the agreement was better than 0.0014%.
Update rates. Owing to the complexity of the algorithms involved, the AGA8DATA block does not update its
calculated output values at every database iteration. Specifically, if pressure changes alone are triggering re-evaluations
of the relevant parts of the calculation, the outputs are updated once every 20 database iterations, approximately. For
temperature changes alone, the update rate is every 30 database iterations, and for gas composition changes (via the
GASCONC block) the rate falls to once per 300 database iterations. Combinations of changes cause updating at the
slowest of the relevant rates. E.g. a change in both line pressure and temperature causes the outputs to update once every
30 iterations; i.e. every 3 seconds at a typical database scan rate of 100ms.
NOTE The compressibility figures output by the AGA8DATA block can be used to normalise measured
natural gas flows - compensating for deviations from the ideal gas laws - and so allow accurate flow
measurement and fiscal metering.
HA082375U003
Issue 33 August 2019 Page 88
AGA8DATA CONDITION FUNCTION BLOCKS
Block parameters
Symbols used in Table 31 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 89 Issue 33 August 2019
CONDITION FUNCTION BLOCKS AGA8DATA
Tref. Reference temperature, in the same units as TempIn (e.g. °C). Tref specifies the reference (base) condition for
the temperature measurement upon which the base compressibility is calculated.
Pabs. Atmospheric pressure relative to a vacuum, in the same units as PressIn (e.g. 1.01325 BarG). Pabs is used to
convert gauge pressure values to the absolute values required in the AGA8 calculations. The field’s default value is as
specified for SI units in the AGA8 report.
Tabs. The temperature on the absolute scale that is equivalent to zero degrees on the corresponding relative scale.
E.g. 273.15 (K) equates to 0 (°C) approximately. Tabs is used to convert relative temperature values to the absolute
values required in the AGA8 calculations. The field’s default value is as specified for SI units in the AGA8 report.
PressTol. Specifies how much the pressure input to the block (PressIn) must change before the pressure-dependent
parts of the AGA8 calculations are re-evaluated. This allows small changes in pressure (particularly those outside the
accuracy of the transmitter) to be ignored and so reduce the computational overhead on the instrument. The pressure in
use by the calculations remains at its last value until PressIn differs from the in-use value by more than PressTol. At this
point - if the Pfault input is healthy - the current PressIn becomes the new in-use pressure.
NOTE 1. Setting PressTol to zero causes any change detected in pressure, however small, to trigger re-
evaluation. A negative PressTol value forces the calculation to run continuously, slowing down the block
update time.
NOTE 2. After a cold start, database download, or update of the data in the associated GASCONC block, the
complete calculation is forced to run.
TempTol. Specifies how much the temperature input to the block (TempIn) must change before the temperature-
dependent parts of the AGA8 calculations are re-evaluated. This allows small temperature changes to be ignored and
reduces the computational overhead on the instrument. The in-use temperature holds until TempIn differs from it by more
than TempTol. At this point - if the Tfault input is healthy - the current TempIn becomes the new in-use temperature.
(Setting TempTol to zero or a negative value has effects corresponding to those for PressTol. See the NOTEs in the
previous section.)
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
ConcBlck. Trips if the block specified in the ConcBlck field cannot be found, is cached, or cannot be accessed.
NoCalcs. Trips if the AGA8 calculations are not being performed because both the temperature and pressure
inputs have failed (Pfault and Tfault TRUE), or because no valid composition data has been loaded to the block
after a cold start (the associated GASCONC block’s GasData field flags ‘Waiting’).
Converge. Trips if the iteration process to compute d (molar density) fails. This alarm clears itself next time the
iteration succeeds.
ZorFOOR. Calculated compressibilities out of range. Trips if Zline, Zbase, or F fall outside the range 0.5 to 1.5.
Note that the values are not limited, only alarmed.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Zbase. Base gas compressibility. The gas compressibility under reference conditions of temperature (Tref) and
pressure (Pref). This field is updated by the instrument whenever the concentration data, or Tref or Pref, change.
Zline. Line gas compressibility. The gas compressibility under line conditions of temperature (TempIn) and pressure
(PressIn). This field is updated by the instrument as each calculation cycle completes.
F. Gas supercompressibility. F=√[Zbase/Zline]. This field is updated as each calculation cycle completes.
d. Molar gas density of the mixture. This field is updated as each calculation cycle completes. The units are mol/dm3.
Note that the gas density in kg/m3 (equivalent to g/dm3) units is given by d x MolWt.
MolWt. Mean molecular weight of the gas mixture - a weighted mean value. This field is updated by the instrument
whenever the data in the associated GASCONC block changes.
Faults. Input field connected from digital signals representing the health of the pressure and temperature I/O.
HA082375U003
Issue 33 August 2019 Page 90
AGA8DATA CONDITION FUNCTION BLOCKS
Pfault. A TRUE input to this parameter, indicating a fault, causes the last (good) pressure reading to remain the
in-use value for the AGA8 calculations.
Tfault. A TRUE input to this parameter, indicating a fault, causes the last (good) temperature reading to remain
the in-use value for the AGA8 calculations.
NOTE. If both Pfault and Tfault are TRUE, Zline, Zbase, F and d hold their last values and the NoCalcs
alarm trips.
Version. (1992) Selects which version of the AGA8 report to use as the source of the update algorithm for the block.
(The 1992 version of the report, reprinted in July 1994, is the only one currently implemented.).
NOTE. This block implements the Detail Characterization Method, as defined in the Report.
HA082375U003
Page 91 Issue 33 August 2019
CONDITION FUNCTION BLOCKS CARB_DIFF
Block function
FastTime
True
Start RunTime
False
Stop
Abort
Commands Reset
Status Alarms
State
RstHotSt
ImpDepth
True
False
SpecBlk
CarbnBlk EfectvCD
O2
CO CO2
H2 EquilbCB
CH4
Temp Carbon CH4adjCP
Diffusion
MinTemp
Calculation SootLine
TargetCD
TargetC CrdbLim
Shape
ShapeK True
AgitatnK
AloyCalc False AloyFact
DspInvAF
Please refer to Figure 21. The CARB_DIFF block is the main interface for ‘Live’ values. It provides the required control
for real-time modelling of the Carbon Diffusion process used for metal surface hardening in the heat treatment industry.
Values from this block can be used in the Carbon Diffusion calculation.
NOTE The STEEL_SPEC block is used to specify the initial elemental composition of the material.
Carbon Diffusion Model. The Carbon Diffusion Model uses two dynamic process inputs, Temperature and
Oxygen. A Temperature input is used as expected, but the Oxygen input is used to provide increased accuracy in the
‘Carbon Profile’ value.
NOTE The Carbon Diffusion calculation may provide inaccurate values if the input parameters exceed the
defined limits. When defined limits are exceeded, appropriate alarms are asserted.
Calculation HotStart. If the Carbon Diffusion calculation model is interrupted, i.e. a power failure occurs, the last
set of input values are used to recover up to a maximum of 15 minutes of lost time, while the calculations were missed.
When the database restarts, the last input values are applied until any lost time is regained allowing the calculations to
continue to exectue as normal. However, if the Carbon Diffusion calculation model is interrupted for more than
15 minutes, i.e. a fault exists, the database restarts showing Status.BadHotSt and Alarms.BadHotSt set TRUE, because
15 minutes of lost time has been regained, but further lost time remains. This means the calculations displayed do not
correspond to the operation of the furnace. The calculations will continue, but remain behind the operation of the furnace
by the amount of time exceeding the 15 minutes maximum, i.e. the Carbon Diffusion calculation model will be 10mins
behind if the calculations stopped for 25mins.
HA082375U003
Issue 33 August 2019 Page 92
CARB_DIFF CONDITION FUNCTION BLOCKS
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 93 Issue 33 August 2019
CONDITION FUNCTION BLOCKS CARB_DIFF
HA082375U003
Issue 33 August 2019 Page 94
CARB_DIFF CONDITION FUNCTION BLOCKS
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Config. Asserted, if the block violates the license limits.
SpecBlk. Asserted, if an invalid block name is entered in the SpecBlk field or the block does not exist.
CarbnBlk. Asserted, if an invalid block name is entered in the CarbnBlk field or the block does not exist.
HrdnsBlk. For future use - Asserted, if an invalid block name is entered in the HrdnsBlk field or the block does
not exist.
OverLoad. Asserted, if the calculations fail to complete within the internal time schedule causing the carbon
diffusion model to become inaccurate. This could be due to extreme carbon diffusion parameters combined with an
extremely heavily loaded application. However, the AN_DATA block will continue to show the results it receives.
This can be reset by setting Commands.RstHotSt TRUE, or will be reset automatically when Status.Done or
Status.Aborted show TRUE.
BadHotSt. Asserted, if a HotStart occurred, i.e. after a power failure, and the last set of input values have been
used to recover the maximum 15 minutes of lost time, but further lost time remains. This means the calculations
displayed do not correspond to the operation of the furnace. The calculations will continue, but remain behind the
operation of the furnace by the amount of time exceeding the 15 minutes maximum, i.e. the Carbon Diffusion
calculation model will be 10mins behind if the calculations stopped for 25mins. This can be reset by setting
Commands.RstHotSt TRUE, or will be reset automatically when Status.Done or Status.Aborted show TRUE.
Status.BadHotSt also shows TRUE. If all lost time calculations, 15 minutes maximum, can be regained using the
last set of input values, the calculations will continue to exectue as normal.
AloyFact. TRUE, if the Alloy Factor exceeds the 0.5 to 1.5 range, or the sum of the elemental composition from
the block defined by SpecBlk, excluding Carbon, exceeds 10%. This alarm automatically sets AloyFact to 1.0, used
for all further calculations.
NOTE This alarm can be suppressed by setting AloyCalc to ‘=1.0’.
BadO2. Asserted, if the averaged O2% exceeds the range 1.0E-26 to 1.0E-16, set when Status.BadO2 is TRUE
while State.Running or State.WaitTrig is set. When TRUE, a clipped averaged O2% is used in the calculation.
BadH2. Asserted, if the H2 level exceeds the range 1.5*CO to 2.5*CO, set when Status.BadH2 is TRUE while
State.Running or State.WaitTrig is set. When TRUE, a clipped value is used in the calculation.
BadGas. Asserted, if the partial pressures sum of the input gasses and model-derived gasses exceeds ‘1’ while
State.Running or State.WaitTrig. This is used in conjunction with Status.BadGas to show the equalibrium
compositions total more than 100%.
BadTemp. Asserted, if the averaged temperature in the furnace exceeds the range 750°C to 1100°C, with an
automatic 0.5°C hysteresis value, while State.Running is set.
NOTE The range 1382°F to 2012°F, with an automatic 0.9°F hysteresis value, can be used if
IP_Type.Imperial set in the header block.
Combined. Asserted, if any alarm is active in the block. Adopts the same status message and priority number
as the block’s highest priority active alarm.
CO2. Shows the calculated percentage level of Carbon Dioxide in the furnace.
EquilbCP. Specifies the calculated equilibrium Carbon Potential value.
CH4adjCP. Specifies the calculated Carbon Potential, adjusted to compensate for the Methane available in the
furnace.
EfectvCD. Specifies the current effective case depth, i.e. the maximum depth at which the requested carbon content,
TargetC has been achieved, using linear interpolation between elements in the model. If the target has not been met at
any depth or if it has been met at the maximum modelled depth, this shows 0 (zero).
NOTE If the TargetC input is changed, this will be updated immediately.
SootLine. Specifies the calculated level of Carbon Potential that would cause a Soot deposit in the material. It is
evaluated each time the calculation is triggered based on the current furnace conditions.
HA082375U003
Page 95 Issue 33 August 2019
CONDITION FUNCTION BLOCKS CARB_DIFF
CarbdLim. Specifies the calculated level of Carbon Potential that would cause a Carbide deposit in the material. It
is evaluated each time the calculation is triggered based on the current furnace conditions.
MaxDepth. (1 mm/2 mm/4 mm/6 mm/8 mm or 0.040”/0.080”/0.160”/0.240”/0.320”) Specifies the maximum
modelled depth of Carbon Diffusion in the material and describes the data presented in the associated AN_DATA block.
This is dependant on Options.ImpDepth which defines which set of values are shown.
AloyCalc. (Standard/Sulfur/=1.0) Specifies the method used to calculate the Alloy Factor, shown in AloyFact.
Standard shows the industry standard equation is used. Sulfur shows an equation including a term for the Sulfur element
is calculated and used. =1.0 shows a fixed value of 1.0 is used in the Alloy calculation.
AloyFact. Shows the metallurgical factor calculated using the method defined in AloyCalc. Alarms.AloyFact is
asserted, if the value calculated exceeds the specified range. This value can be numerically inverted using
Options.DspInvAF.
Commands. Subfield bits used to control the calculations, as displayed in State.
Start. TRUE, specifies the user has requested the calculations to begin. Sets Status.WaitTrig TRUE, and is
indicated when State shows WaitTrig.
Stop. TRUE, specifies the user has requested the calculations have been completed. Sets Status.Done TRUE, and
is indicated when State shows Done.
Abort. TRUE, specifies the user has requested the currently active calculation to be terminated. Sets
Status.Aborted TRUE, and is indicated when State shows Aborted.
Reset. TRUE, specifies the user has requested the calculated results data must be set to 0 (zero). Sets
Status.Ready TRUE, and is indicated when State shows Ready.
NOTE After the calculations have been stopped, Commands.Stop, TRUE, or aborted, Commands.Abort,
TRUE, the calculated results data must be reset, Commands.Reset, TRUE.
RstHotSt. TRUE, specifies the user has requested the HotStart must be reset, Status.HotStrt TRUE and/or
Status.BadHotSt TRUE.
Status. Bitfield indicating general conditions.
NotReady. If TRUE, no action can be taken because the configuration is invalid.
Ready. If TRUE, the configuration is valid and is waiting for the Start request.
WaitTrig. If TRUE, the configuration is valid and calculations will start when the value specified in MinTemp is
achieved.
Running. If TRUE, calculations will occur every minute, but can be stopped at any time. However, the
calculations will never halt automatically.
Done. If TRUE, calculations have been completed and results are frozen until this state is cleared.
Aborted. If TRUE, calculations have been terminated and results are frozen until the state is cleared.
TargetCD. If TRUE, the specified Carbon Potential, TargetC, has been achieved at a depth equal to or greater
than the specified Target Case Depth, TargetCD. However, this field is updated immediately if the TargetC and/or
TargetCD values are changed.
NOTE If the carbon profile is not decreasing, this can be set TRUE even though the carbon percentage at
TargetCD is less than TargetC. However, it would have already achieved the TargetCD value.
HotStart. If TRUE, a HotStart occurred while the calculations were running. This will reset automatically when
entering the Ready state, State shows Ready. Alternatively, it can be reset using Commands .RstHotSt.
BadHotSt. If TRUE, a HotStart occurred, i.e. after a power failure, and the last set of input values have been
used to recover the maximum 15 minutes of lost time, but further lost time remains. This means the calculations
displayed do not correspond to the operation of the furnace, see Alarms.BadHotSt.
BadO2. If TRUE, the averaged O2% exceeds the range 1.0E-26 to 1.0E-16. Sets Alarms.BadO2 TRUE while
State.Running or State.WaitTrig is set. When TRUE, a clipped averaged O2% is used in the calculation.
BadH2. If TRUE, the H2 level exceeds the range 1.5*CO to 2.5*CO. Sets Alarms.BadH2 TRUE while
State.Running or State.WaitTrig is set. When TRUE, a clipped value is used in the calculation.
HA082375U003
Issue 33 August 2019 Page 96
CARB_DIFF CONDITION FUNCTION BLOCKS
BadGas. If TRUE, the partial pressures sum of the input gasses and model-derived gasses exceeds ‘1’ while
State.Running or State.WaitTrig is set.
BadTemp. If TRUE, the averaged temperature in the furnace exceeds the range 750°C to 1100°C, with an
automatic 0.5°C hysteresis value, while State.Running is set.
NOTE The range 1382°F to 2012°F, with an automatic 0.9°F hysteresis value, can be used if
IP_Type.Imperial set in the header block.
Options. Bitfield for optional configuration.
ImpDepth. TRUE, causes the measurment values to appear as Imperial units, ignoring the IP_Type
configuration in the header block. This allows SI units to be shown for temperatures, and Imperial units for depth
measurements or vice-versa.
NOTE This parameter also effects the values displayed in the AN_DATA block configured in CarbnBlk.
FastTime. TRUE, causes a Carbon Diffusion curve to be illustrated over an accelerated period. The actual time
it would have taken to generate this is shown in RunTime.
NOTE Generally of use for product demonstration.
DspInvAF. TRUE, causes the Alloy Factor value to appear numerically inverted. This does not have an effect on
the calculations.
RunTime. Shows the time elapsed while in the Running state. This is the real-time if Options.FastTime set FALSE,
or the accelerated time period if Options.FastTime set TRUE.
Version. Shows the version of Carbon Diffusion algorithm used.
HA082375U003
Page 97 Issue 33 August 2019
CONDITION FUNCTION BLOCKS STEEL_SPEC
Block function
This block is a list of parameters used to define the initial elemental composition of the steel that is being treated using
the Carbon Diffusion process. Used in conjunction with the CARB_DIFF block via the SpecBlk field.
Block parameters
Symbols used in Table 33 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 98
ZIRCONIA CONDITION FUNCTION BLOCKS
Block function
CO_InUse
ProbeOfs 0.0
CarbnPot
Carbon
Clip to
ProbeIn + Potential
0.00, 2.55 CrbPotSt
Calculation
ProbeSt
H2_InUse
0.0
DewPoint
DewPoint Clip to
Calculation -60.0, 160.0 DewPntSt
TempOfs 0.0
Oxygen
Oxygen Clip to
TempIn + Calculation 0.0, 1.0
x10x OxygenSt
TempSt
MinCalcT OxygenEx
PVFrozen
PrbState ≠ Measure
Please refer to the schematic in Figure 22. The Zirconia block calculates Oxygen, Carbon and Dew Point values derived
from the Probe Temperature, the Probe mV and Remote Gas Reference values.
NOTE This block functions using a number of pages. Fields can be located using
<Page>.<Field>.<Subfield> convention.
Probe Clean. Sensors require regular cleaning. Cleaning (Burn Off) is performed by forcing compressed air through
the Probe and can be initiated either manually, Probe Clean.ClnStart, or automatically, Probe Clean.ClnFreq, using a
timed period. During cleaning the PV output is frozen, Main.PVFrozen.
Health Alarm. After cleaning an alarm output, Alarms.ProbeWrn, is generated if the PV does not return to 95% of
its value within a specified time. This indicates that the probe is deteriorating and should be replaced.
Soot Alarm. In addition to other alarms which may be detected, an alarm can be raised when the atmospheric
conditions are such that carbon will be deposited as soot on all surfaces inside the furnace.
HA082375U003
Page 99 Issue 33 August 2019
CONDITION FUNCTION BLOCKS ZIRCONIA
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 100
ZIRCONIA CONDITION FUNCTION BLOCKS
HA082375U003
Page 101 Issue 33 August 2019
CONDITION FUNCTION BLOCKS ZIRCONIA
ProbeOfs. The offset for the probe in mV, applied to Main.ProbeIn before calculations.
TempIn. The measured temperature in the furance subject to the Main.TempOfs before calculations. This is the
measured temperature of the load under treatment, or the measured temperature of the Zirconia probe. If measured within
the load, Main.TempOfs is not usually required.
NOTE During probe cleaning, the slow dynamic response of the load thermocouple inhibits the maximum
temperature probe protection mechanism, Probe Clean.ClnMaxT. If temperature is measured within the
Zirconia probe, Main.TempOfs can be used to provide a temperature more representative of the load.
During probe cleaning, the fast dynamic response of the probe thermocouple allows the maximum temperature probe
protection mechanism, Probe Clean.ClnMaxT, to protect the probe if rapid exothermic temperature rises occur during
Burn-Off.
NOTE Because the Probe Clean.ClnMaxT feature is intended to protect the probe, that Probe
Clean.ClnMaxT is compared with the raw Main.TempIn without the Main.TempOFs being applied.
TempSt. (Good/Bad). Indicates the condition of the temperature input, normally connected from the Alarms.PVError
of any analogue input block to indicate TempIn status. Good shows that no fault exists, Bad shows a failed temperature
input, e.g. thermocouple failure.
TempOfs. The offset for Temperature in mV, applied to Main.TempIn before calcuations.
MinCalcT. The minimum valid temperature in the furnace for calculations to begin or probe cleaning, and probe
impedance to commence. If the temperature (Main.TempIn + Main.TempOfs) is below this value, all calculations,
Main.CarbnPot, Main.DewPoint and Main.Oxygen are set to 0 (zero), the probe cleaning sequence and probe impedance
measurement sequence are inhibited, and Main.CrbPotSt, Main.DewPntSt and Main.OxygenSt show Bad.
ProcFact. This is applicable to the MMI probe only. It is used to compensate for the varying abilities of some alloys
to absorb carbon and clipped in the range 1 to 999.
Alarms. See Appendix D page 545 for a general description of the Alarms field. This field appears on each page of
the block.
Software. Sumcheck error in block’s RAM data.
Probe. Asserted if a Probe input failure has occurred, Main.ProbeSt shows Bad.
Temp. Asserted if the furnace Temperature input failure has occurred, Main.TempSt shows Bad.
CO_Remte. Asserted if the remote CO (Carbon Monoxide) gas status has failed, Gas Ref.CO_RemSt shows
Bad.
H2_Remte. Asserted if the remote H2 (Hydrogen) gas status has failed, Gas Ref.H2_RemSt shows Bad.
ClnRcvWn. Asserted if the Main.ProbeIn mV did not recover to 95% of its value prior to cleaning, within the
stated maximum recovery time, Probe Clean.MxCnRcvT. This indicates the probe is deteriorating and should be
replaced. Returns FALSE after the next successful probe clean sequence, or when Probe Clean.ClnMsgRt set Yes.
ClnAbort. Asserted if the last probe clean sequence was aborted. Returns FALSE after the next successful
probe clean sequence, or when Probe Clean.ClnMsgRt set Yes.
ClnTemp. Asserted if the last probe clean sequence was aborted because the temperature exceeded the value in
Probe Clean.ClnMaxT. Returns FALSE after the next successful probe clean sequence, or when Probe
Clean.ClnMsgRt set Yes.
CantCln. Asserted if a probe clean is requested when the Main.PrbState is Not Ready. This may be caused by
either the user requesting a probe clean by setting Probe Clean.ClnStart set Yes, or by an automatically time
scheduled clean request.
If a clean is requested when Main.PrbState is Not Ready, Probe Clean.ClnStart remains set at Yes. If Probe
Clean.ClnStart is set No or, Probe Clean.ClnAbort is set Yes, this alarm is set FALSE. If Probe Clean.ClnStart is
set Yes when the condition causing Main.PrbState to show Not Ready is cleared, a probe clean will being
immediately.
HA082375U003
Issue 33 August 2019 Page 102
ZIRCONIA CONDITION FUNCTION BLOCKS
ImpRcvWn. Asserted if Main.ProbeIn mV did not recover to 99% of its value prior to the probe impedance
measurement, within the stated maximum recovery time, Impedance.MxCnRcvT. Returns FALSE after the next
successful impedance measurement sequence, or when Impedance.ImpMsgRt set Yes.
PrbImpHi. Derived from Impedance.PrbImpHi. Asserted if the measured probe impedance exceeds the value
defined in Impedance.MaxImp.
ImpAbort. Asserted if the last probe impedance measurement sequence was aborted. Returns FALSE after the
next successful probe impedance measurement sequence, or when Impedance.ImpMsgRt set Yes.
SootWrn. Asserted if the Main.SootWrn shows Yes indicating the Probe has detected atmospheric conditions
that may cause a deposit of soot on surfaces in the furnace.
Combined. Asserted if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
PVFrozen. (No/Yes). Activated automatically during each probe clean sequence or impedance measurement
indicating the Main.CarbnPot, Main.DewPoint, Main.aC_CO_O2 and Main.Oxygen outputs are currently held. This
can be wired from to hold carbon atmosphere control while probe cleaning sequence or probe impedance measurement
is in progress.
PrbState. (Measure/Clean/ClnRecov/Testimp/ImpRecov/NotReady). Shows the current state of the calculations,
cleaning, and impedance measurement.
NotReady indicates the normal state of the probe cleaning sequence if the furnace is not in use. This state occurs if the
temperature (TempIn + TempOfs) used in the furnace is below the configurable minimum temperature, Main.MinCalcT
or Main.ProbeSt or Main.TempSt show Bad. If the probe clean sequence or impedance measurement is in progress when
the temperature falls belows the value defined in Main.MinCalcT or an input fails the probe clean sequence and
impedance measurement sequence will abort and, after the approriate recovery time Main.PrbState shows NotReady.
Measure indicates the normal state of the block when a furnace is in use and carbon potential, oxygen concentration and
dewpoint calculations are being made.
Clean indicates the probe Burn-Off phase of the probe cleaning sequence. This state is initiated by, manually setting
Probe Clean.ClnStart Yes or, automatically when the scheduled probe cleaning sequence is due to start if Main.PrbState
shows Measure. During this state Probe Clean.ClnValve is set to Yes indicating that the purge gas should be applied to
the probe. The probe cleaning sequence will last the duration defined in Probe Clean.ClnTime unless the Main.ProbeSt
or Main.TempSt show Bad, the temperature (TempIn + TempOfs) used in the furnace is below the configurable minimum
temperature, Main.MinCalcT or above Probe Clean.ClnMaxT, the probe cleaning sequence is aborted by setting Probe
Clean.ClnStart No, or Probe Clean.ClnAbort is set Yes. After successful completion of the probe cleaning sequence
Probe Clean.LastClnmV records the probe mV as a quality factor, but will show -1 if the probe cleaning sequence
completed abnormally. During the probe Burn-Off phase, outputs are frozen, Main.PVFrozen set Yes.
ClnRecov indicates the probe is adjusting to the furnace atmosphere, preparing for normal operating conditions. During
this state, Probe Clean.ClnValve is set No to stop the purge gas and Main.ProbeIn is monitored to ensure it recovers to
95% of the original value. When Main.ProbeIn reaches 95% of the original value Main.PrbState will return to Measure,
subject to a minimum and maximum recovery time, Probe Clean.MnCnRcvT and Probe Clean.MxCnRcvT.
Main.Alarms.ClnRcWrn is set TRUE if 95% of the original value has not been reached within the Probe
Clean.MxCnRcvT and Main.PrbState will return to Measure. During the recovery phase, outputs are frozen,
Main.PVFrozen set Yes.
TestImp indicates that the probe impedance is being measured. This state is initiated by setting Impedance.ImpStart Yes
when Main.PrbState shows Measure. During this state, Impedance.ApplyRes is set Yes, indicating a load resistance
should be applied across the probe mV input. The impedance measurement phase will last for 30s unless the temperature
(TempIn + TempOfs) used in the furnace is below the configurable minimum temperature, Main.MinCalcT ,
Main.ProbeSt or Main.TempSt show Bad, the measurement is aborted Impednce.ImpStart set No, or Impednce.ImpAbort
is set to Yes. After successful completion of the impedance measurement, Impednce.Impednce shows the mesaured probe
impedance, but will show -1 if the test was aborted early. During the impedance measurement phase, outputs are frozen,
Main.PVFrozen set Yes.
NOTE Main.PrbState should be wired to a DO_UIO block associated with the ZI module, that includes a
10kΩ impedance measurement load built in. If an alternative load is used, Impedance.ImpTstR must be
changed accordingly.
HA082375U003
Page 103 Issue 33 August 2019
CONDITION FUNCTION BLOCKS ZIRCONIA
ImpRecov indicates the probe is adjusting to the removal of the load, and is preparing for normal operating conditions.
During this state, Impedance.ApplyRes is set No and Main.ProbeIn is monitored to ensure it recovers to 99% of the
original value. When Main.ProbeIn reaches 99% of the original value Main.PrbState will return to Measure, subject to
a maximum recovery time, Impedance.MxImpRcvT. Main.Alarms.ImpRcWrn is set TRUE if 99% of the original value
has not been reached within the Impedance.MxImpRcvTand Main.PrbState will return to Measure. During the recovery
phase, outputs are frozen, Main.PVFrozen set Yes.
CarbnPot. Shows the calculated Carbon Potential existing in the furnace in the range 0 to 2.55. This is calculated
using temperature and carbon probe mV signals based on the ratio of oxygen concentration outside the furnace to the level
of oxygen in the furnace. If the furnace temperature (Main.TempIn + Main.TempOfs) is below the value shown in
Main.MinCalcT, Main.CarbnPot is forced to 0 (zero). If above the Main.MinCalcT value, and Main.ProbeSt or
Main.TempSt show Bad, the last good value is retained.
CrbPotSt. (Good/Bad). Indicates the status of the Carbon Potential value. Set Bad when Main.ProbeSt or
Main.TempSt show Bad, or if the furnace temperature (Main.TempIn + Main.TempOfs) is below the value shown in
Main.MinCalcT.
aC_CO_O2. Shows the calculated carbon activity for the surface gas reaction between CO and Oxygen, applicable
to the Ferronova probe type only. This is derived using,
(CO ↔ C + ½O2), therefore, aC_CO_O2 = f(pCO, p1/2O2)
DewPoint. Shows the calculated Dewpoint within the range -60 to 160. If the furnace temperature (Main.TempIn +
Main.TempOfs) is below the value shown in Main.MinCalcT, Main.DewPoint is forced to 0 (zero). If above the
Main.MinCalcT value and Main.DewPntSt is set Bad, the last good value is retained.
DewPntSt. (Good/Bad). Indicates the status of Main.DewPoint. Set Bad when Main.ProbeSt or Main.TempSt show
Bad, or if the furnace temperature (Main.TempIn + Main.TempOfs) is below the value shown in Main.MinCalcT.
Oxygen. Shows the calculated Oxygen in units determined by Main.OxygenEx. If the furnace temperature
(Main.TempIn + Main.TempOfs) is below the value shown in Main.MinCalcT, Main.Oxygen is forced to 0 (zero). If
above the Main.MinCalcT value, and Main.OxygenSt is Bad, the last good value is retained.
NOTE The calculation before applying the Main.OxygenEx is clipped in the range 0 to 100% (partial
pressure 1.0).
OxygenSt. (Good/Bad). Indicates the status of the Oxygen Potential value. Set Bad when Main.ProbeSt or
Main.TempSt show Bad, or if the furnace temperature (Main.TempIn + Main.TempOfs) is below the value shown in
Main.MinCalcT.
OxygenEx. The Oxygen exponent in the range 0 to 19. This determines the units used in Main.Oxygen. The default,
2, is Oxygen in %. A value of 0 is partial pressure of Oxygen, and a value of 6 presents Oxygen in Parts Per Million, PPM.
NOTE To calcaulate Log Oxygen, this should be set to 2 and the Main.Oxygen output should be wired to an
EXPR block to calculate the log.
Tolernce. A multiplicative scaling factor applied to soot line, before comparison with the Carbon Potential, used to
determine Main.SootWrn. Adjusting this will raise or lower the soot tolerance by the amount entered and can be used to
remove any nuisance alarms derived from Main.SootWrn.
NOTE The soot line calculation employs a fixed Alloy factor of 1.0. Use the CARB_DIFF block if a Soot
Line figure including alloy factor is required.
SootWrn. (No/Yes). Shows Yes if the Probe has detected atmospheric conditions that may cause a deposit of soot
on surfaces in the furnace. Sets Main.Alarms.SootWrn TRUE.
BalInt. (No/Yes). Indicates any PID control loop wired to the output of this block should perform an integral balance
to prevent steps, bumps, due to a proportional kick. Main.BalInt shows Yes for one update when exiting the probe
cleaning sequence, or impedance measurement sequence, or the NotReady state, or when CO or H2 gas references
change between local and remote.
HA082375U003
Issue 33 August 2019 Page 104
ZIRCONIA CONDITION FUNCTION BLOCKS
HA082375U003
Page 105 Issue 33 August 2019
CONDITION FUNCTION BLOCKS ZIRCONIA
CO_RemEn/H2_RemEn. Remote CO and H2 Gas Reference Enable. This enables the remote gas reference, Gas
Refs.CO_Remte, and Gas Refs.H2_Remte, respectively.
CO_InUse/H2_InUse. Shows the CO and H2 Endothermic Gas Reference value used in the Carbon Potential and
DewPoint calculations, respectively. Follows Gas Refs.CO_Local and Gas Refs.H2_Local, unless Gas Refs.CO_RemEn
and Gas Refs.H2_RemEn shows Yes and Gas Refs.CO_RemSt and H2_RemSt shows FALSE, when it follows Gas
Refs.CO_Remte and Gas Refs.H2_Remte.
Impedance Page
ImpStart. (No/Yes). Starts the probe cleaning sequence when set Yes.
ImpAbort. (No/Yes). Used to cancel the current impedance measurement. If the impedance measurement is aborted,
Impedance.ImpAbort set Yes, Impedance.Impednce is set -1 and Main.PrbState shows ImpRecov. Measurement will
only resume after the probe recovers.
ImpMsgRt. (No/Yes). When set Yes, Impedance.ImpRcvWn, Impedance.PrbImpHi, Main.Alarms.ImpRcvWn,
Main.Alarms.PrbImpHi, and Main.Alarms.ImpAbort are reset. Automatically resets No.
MxImRcvT. Sets the maximum recovery time allowed after each impedance measurement. Sets
Main.Alarms.ImpRcvWn TRUE if 99% of the original value is not obtained before this time is exceeded.
ImpTstR. Set the value of the load resistor used in the impedance measurement. Use the default, 10kΩ, if a ZI module
is fitted to a T2550 subsystem.
MaxImp. Defines the threshold value of Impedance.PrbImpHi. If the value is exceeded Main.Alarms.PrbImpHi is
set TRUE.
Impednce. Shows the measured probe impedance value.
PrbImpHi. (No/Yes). Shows the maximum probe impedance threshold value has been exceeded. If the
Impedance.MaxImp value is exceeded, this shows Yes, and Main.Alarms.PrbImpHi is set TRUE.
ImpRcovT. Shows the time taken for Main.ProbeIn value to obtain more than 99% of the original value prior to
starting the probe impedance measurement. If this value exceeds Impedance.MxImRcvT, Impedance.ImpRcovT is set
00:00:00, and Impedance.ImpRcvWn is set Yes.
ImpRcvWn. (No/Yes). Shows the Main.ProbeIn value has failed to recover 99% of the original value in the permitted
time, Impedance.ImpRcovT, prior to starting the probe impedance measurement. This will reset No after completion of
the next successful probe impedance measurement, or if Impedance.ImpMsgRt is set Yes.
ApplyRes. (No/Yes). Indicates the use of the test resistance. If set Yes, a test resistance value defined in
Impedance.ImpTstR should be applied across the probe input. This can be wired to a DO_UIO block associated with
channel 1 of a ZI module, in a T2550 I/O subsystem.
NOTE Each ZI module has a built-in 10KΩ test load.
HA082375U003
Issue 33 August 2019 Page 106
TC_LIFE CONDITION FUNCTION BLOCKS
Block function
Rule
DaysLeft
Uses
Standards UsesLeft
PV
Calculation
ReplceBy
Extend LimitPV
MaxPV
Expend Status
This block provides monitoring and diagnostics information concerning the life expectancy of base metal load
thermocouples used in furnaces complying with a defined standard. The standards supported are the AMS2750D and
AMS2750E. In addition, a user-defined thermocouple life data range is also supported by specifying the rule as
EXTEND, and referring to a TC_LIFE_EX block which contains the life data.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 107 Issue 33 August 2019
CONDITION FUNCTION BLOCKS TC_LIFE
HA082375U003
Issue 33 August 2019 Page 108
TC_LIFE CONDITION FUNCTION BLOCKS
Uses. Shows the total usage to date. This is incremented each time the temperature rises above 50°C. The temperature
must persist at (or above) each threshold value for more than 10 seconds before the usage data for that threshold is
incremented by 1. For example, once 650°C is exceeded, the temperature will have to drop below 650°C and remain there
for at least 10 seconds and then rise above 650°C for at least another 10 seconds before this is incremented by 1
HA082375U003
Page 109 Issue 33 August 2019
CONDITION FUNCTION BLOCKS TC_LIFE
HA082375U003
Issue 33 August 2019 Page 110
TC_LIFE_EX CONDITION FUNCTION BLOCKS
Block function
The TC_LIFE_EX block is an extension to the thermocouple life (TC_LIFE) block. It allows for user-definable
thermocouple life data to be used in the TC_LIFE block, extending the functionality beyond just the AMS2750D and
AMS2750E standards. One TC_LIFE_EX block may be referenced by many TC_LIFE blocks.
The TC_LIFE_EX block allows up to five temperature ranges to be defined for both non-expendable and expendable
thermocouples. The ranges are defined using a list of maximum threshold temperatures (1 to 5) where each value in the
list is greater than the previous temperature specified (that is, temperature 1 ≤ temperature 2 ≤ temperature 3 ≤
temperature 4 ≤ temperature 5). Note that the temperature range starts at 50°C.
For example, if the threshold temperatures were 650°C, 980°C, 1205°C, and 1260°C, then:
● range 1 would be defined as >50°C and ≤650°C,
● range 2 would be defined as >650°C and ≤980°C,
● range 3 would be defined as >980°C and ≤1205°C,
● range 4 would be defined as >1205°C and ≤1260°C, and
● range 5 would be defined as >1260°C.
For each temperature range (identified by the upper temperature threshold), the number of thermocouple uses and days
is defined in an ever-decreasing manner (that is, the highest temperature has the fewest permitted uses/days). A uses or
days value of 0 represents no limit is set.
The maximum temperature that can be specified is 9999, and is entered in the current strategy’s temperature units (that
is, C/F/K/R). As temperature threshold number 5 must be the highest possible temperature, this is always set to 9999 (or
“MAX”) and cannot be changed.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 37 following.
HA082375U003
Page 111 Issue 33 August 2019
CONDITION FUNCTION BLOCKS TC_LIFE_EX
HA082375U003
Issue 33 August 2019 Page 112
TC_SEL CONDITION FUNCTION BLOCKS
Block function
RefPV RefPV
OP
RefPV
Min
Min
MinValid Max
Mean Max
OP_Rule
This block is used to manage multiple load thermocouples for furnace applications. It provides for a maximum of 14
thermocouples which is sufficient for a 2 control zone furnace using a standard 2 butted cubes topology, i.e. apex of
cubes plus centre points. It will derive a summary temperature used to control against a built in set of rules that may be
dynamically changed by the wiring, e.g. change from Min to Max on change of segment in the Setpoint Program. It can
also be configured to discount thermocouples that are out of range.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 113 Issue 33 August 2019
CONDITION FUNCTION BLOCKS TC_SEL
insufficient thermocouples are fitted and valid, see Fitted and Disc_HI
PV1 OP = (PV1 + PV2 + PV3) ÷ 3
Valid. PV3 if OP_Rule.Mean TRUE
PV2
Min. TRUE, indicates that OP is set to the minimum value Disc_LO
HA082375U003
Issue 33 August 2019 Page 114
CONFIGURATION FUNCTION BLOCKS
HA082375U003
Page 115 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS PROGRAM_PROGT600
Block function
These blocks are a type of ‘header’ block. They are a ‘dummy’ header block, containing only the TagName, Type, Task,
LIN Name, DBase, and Rate fields and are specific to a target instrument, or group of related target instruments. Each
block must be present in each of the LIN Database layers that will be blended together to form a complete (regular) LIN
Database in that specific LIN Instrument.
NOTE. The PROGT600 header block is unique to the T600 Series Instrument.
The header blocks in each of the LIN Database layers in the blend must have identical Name fields, i.e. the name of the
LIN Database to be run in the target instrument. In the blended LIN Database, the ‘dummy’ header blocks are discarded
and replaced by the (regular) header block configured in the base.dbf layer of the Strategy.
A Blended Database (or Strategy) is a Read Only file that is the result of a Build command on a selected LIN Node
containing layered LIN Database files (.dbf) and auto generated layers (.ujc).
The Build command creates the Default DBF from any number of *.dbf and *.ujc files in a specified order as configured
in the buildlst.ubl. During a Build ‘dummy’ header and cached blocks are removed but all other blocks are blended into
a single LIN Database.
NOTE. The DefaultDBF and Auto generated layers are all Read Only files and do NOT require a graphics
file, .grf.
Block parameters
The block has no parameters other than the block header parameters, see Appendix D page 544 for details of these
‘header’ fields.
HA082375U003
Issue 33 August 2019 Page 116
T600 CONFIGURATION FUNCTION BLOCKS
Block function
The T600 block is a ‘header’ block that must appear in a control strategy to be executed in a T600 Series instrument, and
acts as a general-purpose block for status information on the whole instrument. In particular, it allows local access via
the LIN to the network’s Real-Time Clock/calendar data, required for alarm handling. The block also specifies a mains
noise-rejection frequency, temperature system for a single instrument, a coldstart (system reset) time, and contains a
brownout alarm that latches on when the power is interrupted for a specified time. The module type assigned to each of
the eight I/O module addresses on the internal serial communications bus is also indicated by the T600 block.
Block parameters
Symbols used in Table 39 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 117 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS T600
HA082375U003
Issue 33 August 2019 Page 118
T600 CONFIGURATION FUNCTION BLOCKS
Site1 to Site8. These fields identify the internal serial bus module type assigned to each of the ISB I/O module
addresses (1 - 8) on the internal serial communications bus.
BrownOut. Specifies the duration (mins) of a power interruption required to trip the BrownOut alarm. In practice,
this can be defined as the maximum duration of power supply interruption that can be tolerated without an adverse
reaction from the plant.
ColdStrt. Specifies the minimum duration (mins) of a power interruption that will cause a coldstart of a T600. After
a coldstart, complete re-initialisation of the parameter database and the control strategy occurs. A ‘warmstart’ can occur
after power interruptions less than ColdStrt; i.e. the current control strategy restarts with the existing parameter database
and operating modes.
Setting ColdStrt to zero is a special case. Then, after a power interruption of any duration the instrument either coldstarts
if coldstart is enabled, or warmstarts - and trips the BrownOut alarm - if not.
NOTE How the instrument starts up after a power interruption is determined by the settings of Switchbank 1,
Switches 3 and 4 (Cold and Warm Start Enable, resp.) Both should be ‘ON’ to provide full warmstart and
coldstart capability.
Node. The ALIN network address. This field is read-only, in the range 01 to FE hexadecimal.
Model. Numeric part of the T600 model identifier. E.g. ‘640’ = T640 instrument.
Software version number. The instrument’s software version number is automatically loaded into the Alarms
parameter ‘units’ field at startup, and can be read by inspecting that field. (E.g. For a T640 the INS button collects the
Alarm field, but the value is displayed in the Tag field after pressing the ALM button.) Note that the ‘units’ field is not
transmitted over the LIN, and so cannot be seen using LINtools’ VIEW facility.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
BrownOut. Indicates a power failure in excess of the time duration set in the BrownOut field. This alarm
appears as an unacknowledged ‘event’ alarm, but has no acknowledged state.
ComS/W. Indicates a common ‘local’ block software error.
UTskEr1 to UTskEr4. Indicates that the corresponding user task (1 to 4) has a sumcheck error.
MainPSU. Indicates that the main PSU has failed (24V dc version only).
StbyPSU. Indicates that the standby PSU has failed (24V dc version only).
RTCinit. Indicates that the Real-Time Clock has not been initialised.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
UsrAlm. This field is connectable to allow the control strategy to drive the instrument’s watchdog relay as a user
alarm. A TRUE input opens the normally-closed relay contacts. However, when Switchbank 1, Switch 5 is ‘ON’
(Watchdog Enable on User Task), UsrAlm is forced TRUE (i.e. contacts open) by a user task sumcheck error.
AreaNo. Security key area (0 - 31). Specifies the plant area in which this instrument is located. If AreaNo is in the
range 1 - 31, a security key of the same area number is required to gain access to the front panel database INSPECT
modes. If AreaNo is 0, any area number security key is accepted. (At the current software issue only areas 0 to 8 are
available.)
TimeOut. Used in database INSPECT modes. If no front-panel pushbuttons are pressed for TimeOut seconds, the
front panel reverts to its normal DISPLAY mode. Setting TimeOut to 0 disables this facility.
Options. Bitfield for selecting the T600 Series instrument front panel, communications, and database save options.
FPdis1 to FPdis4. Setting these bits TRUE prohibits front-panel operator access to loops 1 to 4, respectively.
HA082375U003
Page 119 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS T600
NoKeyPrt. Setting this bit TRUE allows access to the front panel database ‘partial’ INSPECT modes without
having to use the appropriate security key.
NOTE When using LINtools for configuration, by ‘right clicking’ in any block/field within the database, the
field can be promoted to be viewed under ‘Partial Acces’ by selecting ‘Engineer Access’ from the drop down
menu.
NoKeyFul. Setting this bit TRUE allows access to the front panel database ‘full’ INSPECT modes without
having to use the appropriate security key. Note that NoKeyFul overrides NoKeyPrt if both are TRUE, and that
these two bits cannot be altered via the front-panel INSPECT mode if only partial access is in use.
LEDtest. A TRUE input to this bit causes a front panel LED test to be performed.
CommsDis. If TRUE this bit disables UNCONFIRMED field writes only. UNCONFIRMED field writes result
from connections into cached blocks. Values written using LINtools while online and connected to the instrument
are CONFIRMED field writes and are therefore unaffected by this bit. It does not disable writes to blocks cached in
the local T600 Series instrument,and also prevents binary comms selects.
FullSave, PartSave. Allow the current database (in RAM) to be saved to the same filename from which it
was loaded. Making FullSave TRUE saves the entire RAM image. PartSave saves the RAM image excluding the
‘tepid (operator) data’, which retains the values in the existing file. FullSave overrides PartSave if both are TRUE.
NOTE Tepid data is saved once per user task iteration, and at power-down, and comprises the SL, OP, and
MODE values for each PID loop, plus one AN_CONN and one DG_CONN block (specified by AnConBlk and
DgConBlk, resp.). When a warmstart is attempted, if the RAM image proves to be invalid a coldstart is
performed and the tepid data is overlaid. Note that a single TP_CONN block, named in AnConBlk, can specify
tepid data as an alternative to using an AN_CONN and a DG_CONN block.
BinSpd1, BinSpd2. Allow the line speed of the RS422 binary communications link to be set, according to
Table 40.
BinSpd1 BinSpd2 Selected Baud Rate
FALSE FALSE 9600
FALSE TRUE 4800
TRUE FALSE 1200
TRUE TRUE 600
HA082375U003
Issue 33 August 2019 Page 120
T600 CONFIGURATION FUNCTION BLOCKS
E2Form1, E2Form2. These two bits allow the E2ROM filing system to be completely reformatted, which
may be required if it has been corrupted, e.g. by loss of power during a filing operation. To avoid accidental
operation of this feature, the bits must be set and reset in a particular sequence before the reformat takes place. If
any step is wrongly performed, all bits must be reset to FALSE and the sequence started again from step 1. The four
steps in the sequence are:
As each step is carried out it is annunciated on the front panel with a corresponding flashing alarm message:
E2ROM 1 up to E2ROM 4. Only when the fourth message appears is the reformat executed. After successful
reformatting, the four bits automatically reset FALSE, and the current .DBF and .RUN files are regenerated from
RAM.
Status. Read-only bitfield indicating the T600 Series instrument’s communications and hardware status.
PwrFail. This bit latches TRUE whenever the instrument is powered up, and so acts as a power failure flag.
TmpPFail. Indicates that a temporary power failure has occurred. The bit sets in the first iteration after power
up of the user task containing the T600 block, then auto-resets in the second iteration. In a ‘temporary’ power
failure some data is lost/corrupted and so the database file must be reloaded to RAM, but ‘tepid data’ is overlaid as
well. (See the Options section above, under FullSave, PartSave, for details of ‘tepid data’.)
CommsAlm. This bit is set if any cached block within the unit is in software alarm due specifically to a
communications failure (not a sumcheck error). The CommsAlm signal can therefore be used by a supervisory unit
(e.g. Eycon™ 10/20 Visual Supervisor) to monitor the health of all inter-T600 communications, even when the
affected blocks themselves are not visible from the Eycon™ 10/20 Visual Supervisor. It is only necessary to cache
the communicating T600 blocks in the Eycon™ 10/20 Visual Supervisor, to make their CommsAlm bits accessible.
Alarm. Indicates that the alarm relay is in operation, i.e. its contacts are open.
PrtKey, FulKey. TRUE indicates that a valid security key is currently being used with the front panel in
‘partial’ and ‘full’ inspection modes, respectively.
BoardID1 to BoardID2. These two bits indicate the CPU clock frequency on the T600 instrument’s
motherboard. At the current issue of hardware the only available version is 12.5MHz, indicated by both bits being
FALSE.
S11 to S18. Indicate status of T600 Series instrument’s Switchbank 1, Switches 1 to 8, respectively. TRUE =
On, FALSE = Off.
MinRpt1 to MinRpt4. These fields allow the minimum desired repeat rate for tasks 1 to 4, respectively, to be
specified to within 10 ms. When the server initialises, it does not try to execute the task more frequently than the specified
interval, but it may execute it less frequently if there is insufficient CPU time available. Setting these fields to zero makes
the system select the minimum possible values, i.e. the fastest possible repeat rates.
NOTE Refer to the T640 Reference Manual and User Guide (Part no. HA082468), User Task Tuning
section.
TaskHalt. This bitfield allows the user tasks to be stopped and started by the control strategy.
UsrTask1 to UsrTask4. When the input is TRUE the corresponding user task (1 to 4 respectively) is halted.
The task restarts when the input returns to FALSE. Note that you cannot halt the user task containing the T600
block.
AnConBlk. This field can be used in two ways. It can specify the tagname (Block field) of a single AN_CONN block
that is to contain ‘tepid data’, and so have all its configuration data saved at power down. Alternatively it can specify the
tagname of a TP_CONN block, which replaces both an AN_CONN and a DG_CONN block for this purpose. In this case
entering the TP_CONN block name in AnConBlk automatically clears the DgConBlk field.
DgConBlk. Specifies the tagname (Block field) of the single DG_CONN block that is to contain digital ‘tepid data’,
and so have all its configuration data saved at power down. Note that if a TP_CONN block has been named in AnConBlk,
HA082375U003
Page 121 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS T600
which replaces both an AN_CONN and a DG_CONN block for this purpose, the DgConBlk field automatically clears
and cannot be written to.
Log_File. Whenever parameters are altered via the front panel database INSPECT modes, all such changes are
recorded in a logfile in the T600 Series instrument’s E2ROM. The log’s filename has the same root as the .DBF file from
which the strategy was loaded, but with extension .Lnn, where nn ranges from 01 to 99. ‘nn’ increments as each logfile
fills and closes.
The Log_File field shows the number (nn) of the latest logfile that has been closed, and is ready to be uploaded to a
supervisor if required.
NOTE Only two logfiles are retained in E2ROM: the closed file specified in Log_File, and the subsequent
open file which is currently being written to. While the current logfile is being filled - which takes at least one
minute - the previous (closed) logfile is available for uploading. But as soon as the current file fills and closes,
the value in Log_File increments and the previous file is overwritten. A zero value in Log_File means that
there are no valid logfiles in E2ROM.
HA082375U003
Issue 33 August 2019 Page 122
T940 CONFIGURATION FUNCTION BLOCKS
Block function
The T940(X) block is a type of ‘header’ block which must appear in a strategy to be executed in a T940(X). It allows
access to the unit’s Real-Time Clock (independently set up for each T940(X) unit), specifies temperature units for a single
instrument, specifies a cold start (system reset) time and contains a brown-out alarm that latches on when the power is
interrupted for a specified time. The block also indicates a variety of instrument communications/hardware settings, and
allows the selection of various user options.
Block parameters
Symbols used in Table 41 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 123 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS T940
HA082375U003
Issue 33 August 2019 Page 124
T940 CONFIGURATION FUNCTION BLOCKS
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
BrownOut. Indicates a power failure in excess of the time duration set in the BrownOut field. This alarm
appears as an unacknowledged ‘event’ alarm, but has no acknowledged state.
ComS/W. Sets if a software alarm occurs in any ‘local’ block in the database.
PSU. Power loss of either A or B power supplies.
OverTemp. Sets if the internal sensor detects a temperature high enough to damage or upset the correct
functioning of the electronics.
ExtBat. Sets if the external battery is absent or defective.
IntBat. Sets if the internal rechargeable battery is absent or defective.
MainFan. Sets if the stall detector on the enclosure-mounted fan signals failure.
CPUFan. Sets if the stall detector on the CPU-mounted fan signals failure.
Chngovr. Sets if there has been a changeover of primary controller in a redundant system.
I/OComms. Sets if one or more of the I/O comms mechanisms has failed.
WdogLoom. Sets if the watchdog control wiring loom is disconnected from the CPU, e.g. after servicing the
unit. If this alarm trips, return the unit to the factory for inspection.
CPFfail. Indicates a failure of the coldstart parameter file to execute. This file contains parameter values to be
used in the event of a cold start.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Features. (This bitfield is currently unused).
Node. The ELIN/ALIN node address of the instrument, as read from the T940(X) address switches at run-time.
Status. Bitfield indicating the T940(X) communications and hardware status.
ColdStrt. TRUE indicates that the T940(X)’s front-panel rotary ‘Restart’ switch is set to either the ‘cold’ or the
‘hot/cold’ position.
HotStrt. TRUE indicates that the ‘Restart’ switch is set to either the ‘hot’ or the ‘hot/cold’ position.
NOTE From the four possible TRUE/FALSE combinations of these two bits you can deduce the setting of
the Restart switch, e.g. both bits TRUE indicates the ‘hot/cold’ position.
ExtBat. TRUE indicates a missing or defective external battery.
IntBat. TRUE indicates a missing or defective internal rechargeable battery.
Red. TRUE if the T940(X) is a redundant machine.
MainFan. TRUE if the T940(X) main enclosure-mounted fan has failed.
CPUFan. TRUE if the T940(X) CPU-mounted fan has failed.
WdogLoom. TRUE if the watchdog control wiring loom is disconnected from the CPU, see Alarms section.
Chngovr. TRUE if there has been a changeover of primary controller in a redundant system.
CommsAlm. This bit is set if any cached block within the T940(X) unit is in software alarm due specifically to
a communications failure, not a sumcheck error. The CommsAlm signal can therefore be used by a supervisory
instrument to monitor the health of all inter-T940(X) communications, even when the affected blocks themselves
are not visible from the supervisor. It is only necessary to cache the communicating T940(X) blocks in the
supervisor, to make their CommsAlm bits accessible.
This bit can be used in conjunction with the ComS/W alarm to determine if either a comms failure OR a sumcheck
failure has occurred.
PwrFail. Set if the database was started by a power-up (rather than by a user request, e.g. via the terminal
configurator or a ELIN/ALIN remote command). Note that PwrFail is user-resettable.
HA082375U003
Page 125 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS T940
TmpPFail. This bit sets in the same way as PwrFail, but it automatically resets at the second database iteration.
Options. Bitfield setting certain communications and hardware status options.
CommsDis. If TRUE this bit disables UNCONFIRMED field writes only. UNCONFIRMED field writes result
from connections into cached blocks. Values written using LINtools while online and connected to the instrument
are CONFIRMED field writes and are therefore unaffected by this bit.
Protectd. TRUE causes database strategies to be ‘scrambled’ when saved and ‘un-scrambled’ when loaded.
(This feature is not currently supported.)
CONFspd. Selects configurator speed. TRUE selects ‘Configurator mode’. FALSE selects ‘Run mode’.
Configurator mode causes control to operate at reduced efficiency (~85%) but remain unaffected when the resident
configurator is run. Run mode lets control operate at maximum efficiency while the configurator is not running, but
slows it down to ~53% whenever the configurator is run.
SaveDBF, SaveBkUp. Allow the current database (in RAM) to be saved to the same filename from which it
was loaded. Making SaveBkUp TRUE saves the entire RAM image as a .ubd file. SaveDBF saves the RAM image
excluding the ‘tepid (operator) data’, that retains the values in the existing file. SaveBkUp overrides SaveDBF if
both are TRUE.
NOTE Tepid data is saved once per user task iteration, and at power-down. It comprises the SL, OP, and
MODE values for each PID loop, plus any user-specified parameters, as listed in the .tpf file (.tpf file is a file
associated by filename, with the running database file). .tpf file parameters are specified by one block.field
type string per line. The tepid start is attempted when a hotstart cannot be performed and consists of a coldstart
and a tepid data overlay.
ForceDmp. If TRUE, a dump file of the current configuration of this instrument will generated.
StallMB1 to StallMB4. At database startup, TRUE causes the corresponding Modbus comms line (1-4) to
poll all parameters and update them before allowing the database to start running. This ensures, for example, that
all I/O values are up-to-date. These bits also operate in redundant systems at changeover, when the new primary
takes over. They must be set for redundant changeover to function correctly.
StallPB1 to StallPB2. These bits work as for the StallMBn bits (see previous), but with the corresponding
Profibus comms lines (1-2).
AllSubnt. If TRUE, it permits unrestricted communications with all ELIN addresses on the network, if set FALSE
this instrument will only communicate with ELIN addresses on the same logical subnet.
CldStPri. TRUE indicates that this T940(X) CPU is the left hand processor module, FALSE indicates that it is the
right hand processor module.
TaskRpt1 to TaskRpt4. These fields become active when this block is used in a T940X. The fields allow the
minimum desired repeat rate for tasks 1 to 4, respectively, to be specified to within 10 ms. When the server initialises, it
does not try to execute the task more frequently than the specified interval, but it may execute it less frequently if there
is insufficient CPU time available. Setting these fields to zero makes the system select the minimum possible values, i.e.
the fastest possible repeat rates, see T940X Process Supervisor Handbook (Part no. HA028225), User Task Tuning
section.
TaskHalt. This field become active when this block is used in a T940X. This bitfield allows the user tasks to be
stopped and started by the control strategy.
Task_1 to Task_4. When the input is TRUE the corresponding user task (1 to 4 respectively) is halted. The
task restarts when the input returns to FALSE.
NOTE The user task containing the header block cannot be halted.
HA082375U003
Issue 33 August 2019 Page 126
T225 CONDITION FUNCTION BLOCKS
Block function
The T225 block must appear in the control strategy to be executed in the T225 or T225X. It allows access to the unit’s
Real-Time Clock and calendar, as well as indicating network addresses, ELIN/ALIN status and relay states.
Block parameters
Symbols used in Table 42 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 127 Issue 33 August 2019
CONDITION FUNCTION BLOCKS T225
HA082375U003
Issue 33 August 2019 Page 128
T225 CONDITION FUNCTION BLOCKS
PwrFail. TRUE if the database was started by a power-up (rather than by a user request, e.g. via the terminal
configurator or a ELIN/ALIN remote command).
NOTE PwrFail is user-resettable.
TmpPFail. This bit sets in the same way as PwrFail, but it automatically resets at the second database iteration.
CommsAlm. TRUE if any cached block within the unit is in software alarm due specifically to a
communications failure, not a sumcheck error. The CommsAlm signal can therefore be used by a supervisory unit to
monitor the health of all communications, even when the affected blocks themselves are not visible from the
supervisor. It is only necessary to cache the communicating blocks, to make their CommsAlm bits accessible.
This bit can be used in conjunction with the ComS/W alarm to determine if either a comms failure OR a sumcheck
failure has occurred.
ELINFail. TRUE if a communications failure is detected on the ELIN, also sets Alarms.ELIN TRUE.
ALINFail. TRUE if a communications failure is detected on the ALIN, also sets Alarms.ALIN TRUE.
FwdRly. TRUE by default. FALSE if the Forwarding relay is open. The normal operation of the Forwarding
relay is TRUE = energised/closed = ‘healthy’, FALSE = de-energised/open = ‘database fault’, and should be used
for test purposes only.
WdogRst. T225 only. TRUE if the last system reset was generated by watchdog failure.
BattLow. T225 only. TRUE if the on board battery voltage reads less than 2.7V.
BattHigh. T225 only. TRUE if the on board battery voltage reads greater than 3.2V.
In1. Shows the current status of the ETH1 connector.
In2. Shows the current status of the ETH2 connector.
CPFile. TRUE if a Coldstart Parameter File (.cpf) has been found.
EventLog. T225X only. TRUE indicates a severity ‘error’ or ‘Major error’ has been written to the EventLog
file, .udz. This indicates further investigation is required because an unexpected problem in the execution of the
instrument has occured. Wiring to this field can allow it to be reset.
PSU_Stat. T225 only. Power Supply status
VcoreHi. Not used, always zero (0 - FALSE)
VcoreLo. Not used, always zero (0 - FALSE)
3V3Hi. TRUE if the 3.3V Power Supply greater than 3.4V.
3V3Lo. TRUE if the 3.3V Power Supply less than 3.2V.
5VHi. TRUE if the 5V Power Supply greater than 5.2V.
5Vlo. TRUE if the 5V Power Supply less than 4.8V.
12VHi. TRUE if the 12V Power Supply greater than 12.8V.
12VLo. TRUE if the 12V Power Supply less than 11.8V.
m5VHi. Not used, always zero (0 - FALSE)
m5VLo. Not used, always zero (0 - FALSE)
m12vHi. TRUE if the -12V Power Supply greater than -12.8V.
m12vLo. TRUE if the -12V Power Supply less than -11.8V.
Switches. Motherboard switchbank settings (TRUE = ‘on’)
S1 to S16. Always zero (0 - FALSE)
ProcTemp. T225 only. This shows the current temperature of the processor. If this value exceeds 80ºC the
Alarms.HighTemp is set TRUE.
CardTemp. T225 only. This shows the current temperature of the Printed Circuit Board (PCB). If this value exceeds
60ºC the Alarms.HighTemp is set TRUE.
HA082375U003
Page 129 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS TACTICIAN
Block parameters
Symbols used in Table 43 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 130
TACTICIAN CONFIGURATION FUNCTION BLOCKS
HA082375U003
Page 131 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS TACTICIAN
ColdStrt. Specifies the minimum duration (mins) of a power interruption that will cause a coldstart of the instrument
when the ColdStart hardware switches (Options - SW2:S1 and SW:S2) are set. When a LIN Database file, dbase.dbf, is
downloaded from a remote node or loaded using the Tactician’s local terminal, a dbase.run file is created, and all other
files with the .run extension are deleted. On coldstart, the Tactician searches its filing system for a .run extension file. If
found, the corresponding dbase.dbf is loaded and run. If that fails, the Tactician does not start its runtime.
NOTE If hardware switches (Options - SW2) are set to Off then an auto-generated database is created and
run.
Model. (Unknown/T2550-*/T820/T830/T840/T860/T870). Instrument type and the type of base unit, defined by the
number of slots if applicable, e.g. T2550-16 indicates a T2550 instrument in a 16 slot base.
NOTE (*) is the total number of module slots in the base unit.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
BrownOut. Asserted if a power failure in excess of the time duration set in the BrownOut field has occurred,
and appears as an unacknowledged ‘event’ alarm, without an acknowledged state.
ComS/W. Indicates a ‘local’ software alarm occuring in any block in the database.
Sumcheck. Asserted in conjunction with ComS/W if a sumcheck alarm occurs in any block in the running
database.
NodeSw. Asserted if the Node address switches have altered since the unit was powered up.
NOTE This Alarm field has no effect when used on the T2550 instrument.
CPFfail. Asserted if a failure of the coldstart parameter file to execute has occurred. The .cpf contains parameter
values to be used in the event of a cold start.
ComH/W. Asserted if a hardware alarm occurs in this instrument. This alarm is active if any of the following
are TRUE:
- One or more of the PSUs have failed
- A Status of Missing, BadType, BadSite or BadTask is TRUE on a MOD_UIO block
- A Status of Missing, BadType, BadSite, BadTask, BadSetup, or OverTemp is TRUE, or HwFlt is non-zero on a
MOD_DI_UIO or MOD_DO_UIO block
- A Status of HwFlt, HwAuxFlt, BadTask or OverTemp is TRUE on an AI_UIO, AO_UIO, DI_UIO, DO_UIO,
VP_UIO, TP_UIO or FI_UIO block.
- The file system error status bit in this block, Status.FilSysEr, is TRUE.
BattLow. Asserted if the battery supply is below the required voltage or defective.
BattFail. Asserted if the battery has failed.
RTCFail. Asserted if a problem with the Real-Time Clock is detected.
PLicence. Asserted if the current configuration exceeds the licence levels of this product. This priority 15 alarm
cannot be disabled, or acknowledged when active.
SLicence. (Redundant system only) Asserted if the current configuration exceeds the licence levels of this
product on the Secondary unit in a 2 processor redundant system. This priority 15 alarm cannot be disabled, or
acknowledged when active.
SlowTask. Asserted if User Tasks are running slower than the configuration engineer requested.
EventLog. Asserted if a severity ‘error’ or ‘Major error’ has been written to the EventLog file, .udz. This
indicates further investigation is required because an unexpected problem in the execution of the instrument has
occured. The EventLog alarm follows the state of Status.EventLog (TRUE = in alarm, FALSE = out of alarm).
Write to the status word or Status.EventLog bit to clear the bit to get a new alarm for the next important event log
entry.
ResetOfl. Asserted if the maximum of 2560 parameters in the Reset Data Set supported by the Cold Start
Parameter file (.cpf) has been exceeded, or if the .cpf file is missing. Of these 2560 parameters, 3 are required for
Date, Time and Checksum, and are used to validate the data.
HA082375U003
Issue 33 August 2019 Page 132
TACTICIAN CONFIGURATION FUNCTION BLOCKS
Combined. Asserted if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Node. The LIN node address of the instrument, as read from the instrument address switches at runtime.
Cluster. The name of the group of instruments of which this instrument is a part of.
NOTE If the instrument is not part of a cluster this field will remain blank.
Options. Bitfield setting Tactician communications and hardware status options.
CommsDis. If TRUE, this bit disables UNCONFIRMED field writes only. UNCONFIRMED field writes result
from connections into cached blocks. Values written using LINtools while online and connected to the instrument
are CONFIRMED field writes and are therefore unaffected by this bit.
AllSubnt. If TRUE, it permits unrestricted communications with all ELIN addresses on the network, if set
FALSE this instrument will only communicate with ELIN addresses on the same logical subnet.
ForceDmp. If TRUE, a dump file of the current configuration of this instrument will generated.
SaveBkUp, SaveDBF. If TRUE, this allows the current database (in RAM) to be saved to the same filename
from that it was loaded. Making SaveBkUp TRUE saves the entire RAM image as a .ubd file. SaveDBF saves the
RAM image excluding the ‘Reset (operator) data’, that retains the values in the existing file. SaveBkUp overrides
SaveDBF if both are TRUE.
NOTE Reset data comprises Setpoint, Output and Mode for each PID loop, plus any user-specified
parameters, as listed in the Coldstart Parameter File, .cpf, using the running Database filename and a .cpf
extension. The .cpf file consists of a list of coldstart parameters and values and a Reset data overlay and is used
if a hotstart fails. .cpf parameters set in the file are specified by one block.field type string per line.
BattFit. If TRUE, this bit activates the Alarms.BattLow and Alarms.BattFail and illuminates the relevant battery
status LED’s. If set FALSE, it is assumed that the battery is deliberately not fitted and has no effect on the battery
alarms and LED’s.
DISPtest. If TRUE, this bit illuminates all LEDs on the instrument that are under software control.
NOTE The ‘Ethernet (speed)’ and ‘Ethernet (activity)’ LEDs are excluded in the T2550 instrument, and
the Secondary processor LEDs will only illuminate if the processors are synchronised
CONFspd. Selects configurator speed. If TRUE, this bit selects ‘Configurator mode’; FALSE selects ‘Run
mode’. In Configurator mode, more processing time for the resident Configurator or FTP is allocated. This mode
may cause the strategy to run slower than usual, because a larger amount of CPU is allowed for the Configurator or
FTP. Setting the Configurator mode has no effect on the strategy if sufficient CPU already exists. In Run mode, the
strategy operates at maximum efficiency.
IMPORTANT Beware if temporarily changing the Options.CONFspd bit, it will become permanent if the
control strategy is saved. If saved, the Options.CONFspd bit can be reset, but any following Cold Start will reload
the LIN Database containing the saved value.
CachdPEs If TRUE, the instrument (T2550/T820 V5.0 or later) will display all information collected from the
block in the remote instrument (only if this instrument also supports the CachdPEs), including units, text and field
name references.
UnSupAll. When set TRUE it will unsuppress all alarms in the instrument’s local database regardless of whether
they have been set to indefinite or with a time duration. The UnSupAll bit will then auto-reset to FALSE as it only
reacts to a rising edge. If held TRUE, Alarm Suppression will continue to function as normal until the next rising
edge. Wiring out from the UnSupAll bit serves no purpose.
UsrAlm. Controls the state of the watchdog relay (T2750 only). When the instrument is powered off, or is
powered and no strategy is running, the watchdog relay is open (alarm state). When a strategy is running, the relay
is driven according to the state of this bit. A value of FALSE imples no alarm (the relay is energised and the contacts
closed). A value of TRUE imples an alarm state, and opens the relay.
GwDcmEmu. Profibus Gateway DCM emulation mode. This allows the behaviour of the gateway system to act
in a standard mode, or as DCM blocks have acted in the past. If TRUE, the gateway acts in a DCM mode when
working with DCM blocks. If false, the gateway acts in the more traditional manner. When working with non-
DCM blocks, this option has no impact.
HA082375U003
Page 133 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS TACTICIAN
The following table shows the differences in operation that the GwDcmEmu parameter controls.
Caution
Removal of power while SavActiv is set TRUE will corrupt the dbase.DBF on the secondary controller.
CldStPri. (Redundant system only) TRUE indicates that this CPU instrument is the cold start primary, i.e. it will
attempt to start-up as the primary controller after a power failure, if the relative status of the primary and secondary
units at power down could not be resolved.
HA082375U003
Issue 33 August 2019 Page 134
TACTICIAN CONFIGURATION FUNCTION BLOCKS
HA082375U003
Page 135 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS EYCON-10_EYCON-20
Block parameters
Symbols used in Table 45 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 136
EYCON-10_EYCON-20 CONFIGURATION FUNCTION BLOCKS
HA082375U003
Page 137 Issue 33 August 2019
CONFIGURATION FUNCTION BLOCKS EYCON-10_EYCON-20
CommsDis. If TRUE this bit disables UNCONFIRMED field writes only. UNCONFIRMED field writes result
from connections into cached blocks. Values written using LINtools while online and connected to the instrument
are CONFIRMED field writes and are therefore unaffected by this bit.
Protectd. TRUE causes database strategies to be ‘scrambled’ when saved and ‘unscrambled’ when loaded.
(This feature is not currently supported.)
CONFspd. Selects configurator speed. TRUE selects ‘Configurator mode’. FALSE selects ‘Run mode’.
Configurator mode causes control to operate at reduced efficiency (~85%) but remain unaffected when the resident
configurator is run. Run mode lets control operate at maximum efficiency while the configurator is not running, but
slows it down to ~53% whenever the configurator is run.
FullSave. TRUE saves the current database to the current .dbf file.
PartSave. TRUE saves the current database to file, filename.SBF, temporarily suspending the execution of the
database during the save processes. filename is the root name of the current database file.
BLOCKspd. TRUE increases the amount of CPU allocated to running function blocks. This improves field
input-to-output times for Profibus systems, but at the expense of slowing down the front-panel response.
PANELspd. TRUE decreases the amount of CPU allocated to running function blocks (contrast previous
parameter). This improves front-panel responsiveness, and on Modbus-only systems may yield a slight
improvement in Modbus throughput.
NOTE Setting PANELspd TRUE is not recommended for high-performance Profibus systems. Setting both
BLOCKspd and PANELspd has no effect.
ForceDmp. TRUE, generates a dump file of the current configuration of this instrument.
ClrBrOut. TRUE enables auto-clear brownout alarm.
ColdStart. TRUE enables coldstart control strategy.
WarmStrt. TRUE enables warmstart control strategy (not implemented).
HotStart. TRUE enables hotstart control strategy.
CachdPEs TRUE enables the instrument (Eycon V3.0 or later) to display all information collected from the
block in the remote instrument (only if this instrument also supports the CachdPEs), including units, text and field
name references.
UnSupAll. When set TRUE it will unsuppress all alarms in the instrument’s local database regardless of whether
they have been set to indefinite or with a time duration. The UnSupAll bit will then auto-reset to FALSE as it only
reacts to a rising edge. If held TRUE, Alarm Suppression will continue to function as normal until the next rising
edge. Wiring out from the UnSupAll bit serves no purpose.
Status. Bitfield indicating the instrument communications and hardware status.
BattBad. Battery failed or absent.
BcstStrm. TRUE, indicates the processor is not accepting all Ethernet traffic presented, but is allowing LIN
communications, sets Alarms.BcstStrm TRUE.
CommsAlm. This bit is set if any cached block within the instrument is in software alarm due specifically to a
communications failure (not a sumcheck error). The CommsAlm signal can therefore be used by a supervisory
instrument to monitor the health of all inter-instrument communications, even when the affected blocks themselves
are not visible from the supervisor. It is only necessary to cache the communicating instrument blocks in the
supervisor, to make the CommsAlm bits accessible.
This bit can be used in conjunction with the ComS/W alarm to determine if either a comms failure OR a sumcheck
failure has occurred.
PwrFail. Set if the database was started by a power-up (rather than by a user request, e.g. via the terminal
configurator or a ELIN remote command).
NOTE The PwrFail is user-resettable.
TmpPFail. This bit sets in the same way as PwrFail, but it automatically resets at the second database iteration.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
HA082375U003
Issue 33 August 2019 Page 138
EYCON-10_EYCON-20 CONFIGURATION FUNCTION BLOCKS
HA082375U003
Page 139 Issue 33 August 2019
CONTROL FUNCTION BLOCKS
HA082375U003
Issue 33 August 2019 Page 140
PID CONTROL FUNCTION BLOCKS
Block function
Please refer to Figure 25. The PID Control block performs two main functions. It generates a resultant internal setpoint
SP (upper part of the schematic), and then uses this setpoint together with a process variable input PV to generate a PID
control output OP (lower part of the schematic).
The main features of the PID block are;
Non interactive 3-Term control.
P, P+I, P+D, PID and On-Off hysteresis control variants.
7 modes of operation.
Interlocks for bumpless transfer in cascade control.
Variable feedforward term (manual reset).
Gain scheduling facilities.
Setpoint trim.
Integral term desaturation.
Integral term balance.
Filtered derivative term (reduces susceptibility to noise).
Absolute and deviation alarms.
HA082375U003
Page 141 Issue 33 August 2019
CONTROL FUNCTION BLOCKS PID
Remote SP
Ranged by
HR_SP
LR_SP
Remote
Limited by Limited by
SP HL_SP SL + HL_SP
LL_SP + LL_SP
AutoManual
SL_Track -
HDA, LDA Deviation +
Ranged by & +
TrimSP HR_SP Absolute
LR_SP Alarm
HDA, LDA Processing
-
InvPID
Ranged by
PV HR_SP
LR_SP PID
+
Calculation
SP +
+
-
FF_PID
AutoRemote
Track
Hold
M Ranged by Limited by
Manual HR_OP HL_OP OP
Track LR_OP LL_OP
Track Hold
De-range
FB_OP
to % External
Connection
HA082375U003
Issue 33 August 2019 Page 142
PID CONTROL FUNCTION BLOCKS
On-off control
Simple on-off control is implemented using the PID block by setting the proportional band XP to zero. This changes the
function of TI which now sets the deadband (hysteresis) below the resultant setpoint (see Figure 26).
HR_SP
PV
DEADBAND(TI)
SP
LR_SP TIME
HR_OP
HL_OP
LL_OP OP
LR_OP TIME
Setpoint definition
The resultant setpoint SP is the value ultimately used to control the process variable in a loop. SP derives from a
parameter called the local setpoint (SL) which is the setpoint the operator can alter (except in the remote operating mode).
In automatic mode, the local setpoint can always be adjusted unless measures are taken to stop this.
In remote mode, the local setpoint is controlled by RemoteSP, and this ensures that transfer from remote into any other
mode of operation is bumpless. However, the procedure for transferring into remote mode is not necessarily bumpless,
and often requires protection. This implies the use of track modes in the preceding blocks - standard practice in cascaded
systems.
In manual, track and hold modes there are two alternatives available for control of the local setpoint, defined by SL_Track
in the Options field.
If SL_Track = TRUE, the local setpoint automatically follows the process variable. This simplifies the operation of most
control loops, and avoids the possibility of setpoint disturbances occurring as a result of careless operation. The second
alternative is to allow the operator to maintain control of the local setpoint in these modes of operation. This is achieved
by setting SL_Track = FALSE.
The TrimSP facility allows a bias to be added to the local setpoint. This feature is often used for plant optimisation and
production control.
NOTE The setpoint limits defined by parameters HL_SP and LL_SP act independently on both the local
setpoint (SL) and the resultant setpoint (SP) in all modes of operation.
HA082375U003
Page 143 Issue 33 August 2019
CONTROL FUNCTION BLOCKS PID
Manual mode
The controller output OP has read/write status. The local setpoint SL either follows PV or stays constant depending on
the status of SL_Track.
Automatic mode (AUTO)
OP is controlled as a function of PV and SP. SL has read/write status.
Remote mode
OP is controlled as a function of PV and SP. SL is controlled by RemoteSP, which has read/write status. Remote mode
is a conditional mode of operation. EnaRem (remote mode enable) must be TRUE to permit operation in remote mode.
If EnaRem is FALSE the control loop defaults into forced automatic mode if remote mode is selected.
Forced automatic mode (F_AUTO)
This mode is selected by default when remote mode is selected without being enabled. Forced automatic mode has the
same operational characteristics as automatic mode, with the exception that the control loop transfers to remote mode as
soon as EnaRem is TRUE.
Forced manual mode (F_MAN)
The operating characteristics of this mode are similar to manual mode. The mode is normally used to indicate a fault
condition which precludes operation in automatic or remote modes, e.g. loss of PV input, data corruption, etc.
Forced manual mode can only be selected from the ModeSel field and therefore its application is user-defined. Setpoint
limits and output limits are active in all operating modes.
Block parameters
Symbols used in Table 46 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
Parameter Function Units Status
Mode Current operating mode Menu
FallBack Suppressed operating mode Menu
PV Process Variable (PV) Eng
SP Resultant setpoint Eng
OP Controller output %
SL Local setpoint Eng
TrimSP Local setpoint trim Eng
RemoteSP Remote setpoint Eng
Track Track input %
HR_SP Setpoint/process variable high range Eng
LR_SP Setpoint/process variable low range Eng
HL_SP Setpoint high limit Eng
LL_SP Setpoint low limit Eng
HR_OP Output high range %
LR_OP Output low range %
HL_OP Output high limit %
LL_OP Output low limit %
Alarms
Software Block RAM data sumcheck error/network failure T/F
HighAbs High absolute alarm T/F
LowAbs Low absolute alarm T/F
HighDev High deviation alarm T/F
LowDev Low deviation alarm T/F
Combined OR-ing of all Alarms bits T/F
HAA High absolute alarm limit Eng
LAA Low absolute alarm limit Eng
HDA High deviation alarmlimit Eng
LDA Low deviation alarm limit Eng
TimeBase TI, TD time units (secs/mins) Menu
XP Proportional band %
TI Integral time constant/deadband % %
Continued...
HA082375U003
Issue 33 August 2019 Page 144
PID CONTROL FUNCTION BLOCKS
HA082375U003
Page 145 Issue 33 August 2019
CONTROL FUNCTION BLOCKS PID
SL. Local setpoint. This value represents the operator setpoint for the control loop. A setpoint trim is added to SL to
produce SP, used as the desired value for control. SL has read/write status in automatic mode, and read-only status in
remote mode where SL follows RemoteSP. The read/write status of SL in manual, track and hold modes is conditional,
and configured in SL_Track. Setpoint limits are used in all modes of operation and act on both SL and the SP values
independently.
TrimSP. Setpoint trim.
RemoteSP. Remote setpoint. Controls setpoint in remote mode only.
Track. Controls OP in track mode.
HR_SP, LR_SP. High & low ranges, resp., of setpoint and process variable in engineering units.
HL_SP, LL_SP. High & low setpoint limits, resp. Setpoint limits are active in all modes of operation and act
independently on SL and SP.
HR_OP, LR_OP. High & low ranges, resp., of output in engineering units.
HL_OP, LL_OP. High & low limits, resp., of output in engineering units. Output limits are active in all modes of
operation.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
HighAbs, LowAbs. High & low absolute alarms set by parameters HAA and LAA, respectively, with a 0.5%
hysteresis band on each limit.
HighDev, LowDev. High & low deviation alarms set by parameters HDA and LDA, respectively, with a 0.5%
hysteresis band on each limit. A high deviation alarm occurs when PV–SP > HDA, and a low deviation when SP–
PV > LDA.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
HAA, LAA. High & low absolute alarm limits, resp., in engineering units.
HDA, LDA. High & low deviation alarm limits, resp., in engineering units.
TimeBase. (Secs/Mins). Specifies time units for TI and TD.
XP. Proportional band (%). The on-off hysteretic control option is selected when XP = 0. The function of TI is altered
and is used to specify the deadband when on-off control is selected.
TI. Dual function: Integral time constant, seconds/minutes (XP ≠ 0), or Deadband % (XP = 0). With XP = 0, TI specifies
the deadband as a percentage of the setpoint range.
NOTE. The deadband function operates below the resultant setpoint.
TD. Derivative time constant (seconds/minutes).
Options.
InvPID. Selects 3-Term control action sense. The error term in the Process Automation controllers is defined as
ER = PV – SP. When InvPID = FALSE, an increase in ER produces a corresponding decrease in the 3-term output
to compensate. When InvPID = TRUE, increasing ER produces a corresponding increase in the 3-term output to
compensate.
SL_Track. Causes the local setpoint to follow PV when either hold, track or manual modes are active. The local
setpoint is still subject to the action of setpoint limits.
IntBalSL. Affects the operation of the controller in automatic mode. When IntBalSL = TRUE, any write to the
local setpoint SL automatically triggers an integral term balance procedure on the 3-term output, see Appendix A,
Control Loop Operating Modes, for details of integral term balance). When IntBalSL = FALSE, a change to SL
results in the normal 3-term response.
NOTE. When TRUE, this will cause an integral term balance even for writes that do not change the value of
SL
HA082375U003
Issue 33 August 2019 Page 146
PID CONTROL FUNCTION BLOCKS
IntBalXP. Allows the integral term balance to be triggered automatically on changes to the proportional band
(XP). Normally set to TRUE, IntBalXP should be disabled in gain-scheduling applications, where it would interfere
with proper control response.
IntBal. A rising edge into this bit forces an integral term balance to be performed, regardless of the other Options
inputs.
MSelFunc. When TRUE, this bit modifies the action of the ModeSel parameter so that only one of the mutually
exclusive mode bits is active at any one time. Defaults TRUE on block creation.
DevAlmLm. When TRUE, deviation alarms are based on the limited version of SP. When FALSE, deviation
alarms are based on SP prior to the application of any limits.
SelMode. This bitfield is used to select controller modes via digital inputs from the control strategy. The following
is given in addition to Table 46.
SelRem. Selects remote mode. Remote mode is a conditional mode of operation which requires to be enabled.
EnaRem must be TRUE to permit operation in remote mode, otherwise forced automatic mode is selected by
default.
EnaRem. Enables remote mode. TRUE permits operation in remote mode.
FALSE causes the control to be transferred into forced automatic mode when remote mode is selected.
ModeSel. This bitfield indicates the modes that have been selected. The mode actually active is the selected mode
with highest priority. The following is given in addition to Table 46.
EnaRem. Output connection from master to slave controller for cascade control applications. This connection is
FALSE when hold or manual mode is selected (not necessarily active) in the master controller. This output should
be connected to the SelMode.EnaRem input on a slave controller.
ModeAct. This bitfield shows the control mode currently active. The following is given in addition to Table 46.
NotRem. Output connection from the slave controller into the master for cascade control applications. This
connection is TRUE when the slave controller is not operating in remote mode. This output should be connected
into SelMode.SelTrack on the master controller.
FF_PID. Feed forward. Used to add a bias to the 3-Term output. This is sometimes called ‘manual reset’.
FB_OP. Feedback value. Used in integral desaturation, to indicate when the controller output has been restricted by
the action of output limits, see Appendix A, Integral Balance & Integral Desaturation.
HA082375U003
Page 147 Issue 33 August 2019
CONTROL FUNCTION BLOCKS ANMS
Block function
Manual
SelTrack
PV
Auto Rate Limit
Track Track
by
Limit by UpRate OP
Demand
HL, LL DownRate
Track Track
Track
Please refer to the schematic in Figure 27. The Analogue Manual Station block allows the operator to interact with a
plant variable at runtime. The station provides output limits, asymmetric rate limits, and auto/manual/track control with
fallback.
In track mode (highest priority), OP is derived from the Track parameter. In automatic mode OP follows PV, and in
manual mode OP can be adjusted via the Demand parameter. Note that in track mode OP is subject to output limits but
not rate limits. In auto and manual both output limits and rate limits (if activated) apply.
Block parameters
Symbols used in Table 47 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 148
ANMS CONTROL FUNCTION BLOCKS
HR, LR. High & low range for graphic objects (Bar, Trend) linked to PV and OP. HR and LR define the 100% and
0% displays, respectively.
HL, LL. High & low OP limits.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
UpRate. Specifies maximum rate of increase of OP (i.e. ‘rate limit’) in engineering units/time. Time units are
specified by the TimeBase parameter.
DownRate. Specifies maximum rate of decrease of OP (i.e. ‘rate limit’) in engineering units/time.
TimeBase. (Secs/Mins/Hours/Days) Selects time units for rate limit functions, UpRate and DownRate.
SelRate. Activates rate limit functions, UpRate and DownRate.
SelTrack. Selects track mode. With SelTrack TRUE, the Mode parameter defines the fallback (suppressed) mode.
NotAuto. Indicates that the station is not operating in auto mode.
HA082375U003
Page 149 Issue 33 August 2019
CONTROL FUNCTION BLOCKS DGMS
Block function
SelTrack
‘High’ Text
Manual MANUAL
Input
AUTO
In Out
TRACK
Track -1 Not_Out
Please refer to the schematic in Figure 28. The Digital Manual Station block allows the operator to switch a logic signal
within a control strategy at runtime. In automatic mode the Out parameter follows the state of the In parameter. In manual
mode, Out can be set independently (via the specification menu or a Superviory unit e.g. Eycon™ 10/20 Visual
Supervisor). In track mode*, Out follows the Track* parameter.
Block parameters
Symbols used in Table 48 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 150
DGMS CONTROL FUNCTION BLOCKS
HA082375U003
Page 151 Issue 33 August 2019
CONTROL FUNCTION BLOCKS SIM
Bias
Invert
Range to %
+ by
PV + Lag1
HR_PV or Lag2
LR_PV Intergrate
-1 +100%
Please refer to the schematic in Figure 29. The Simulation block provides a simulation of plant characteristics and can
be used for proving the operation of a control strategy off-line.
The SIM block has two first-order lag functions with pseudo-random noise. A further option allows an integrator function
to be substituted in place of the first lag function for simulation of capacity. The block also includes PV bias, inversion,
initialisation and auto/manual/track control with fallback.
Track mode, the highest priority, is selected via the SelTrack parameter. In track mode OP is controlled by Track. In
automatic mode OP is derived from PV according to the block characteristics. In manual mode OP can be adjusted
independently. Note that output limits are active in all operating modes.
Block parameters
Symbols used in Table 49 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
Parameter Function Units Status
Mode Current operating mode Menu
Fallback Suppressed operating mode Menu
PV Process variable Eng1
Bias PV bias Eng1
Track Controls OP in track mode Eng1
HR_PV Input high range (& PV graphics range) Eng1
LR_PV Input low range (& PV graphics range) Eng1
OP Block output Eng2
HR_OP Output high range (& OP graphics range) Eng2
LR_OP Output low range (& OP graphics range) Eng2
HL_OP Output high limit Eng2
LL_OP Output low limit Eng2
Alarms
Software Block RAM data sumcheck error / network failure T/F
Combined OR-ing of all Alarms bits T/F
NoiseMax Pseudo-random noise max. amplitude Eng2
Lag1 1st filter (or integrator) time constant Time
Lag2 2nd filter time constant Time
TimeBase Lag1 & lag2 time units select Menu
Intgr Lag1 function select (integrator/filter) T/F
Invert PV sense invert select T/F
Init Block filters initialisation T/F ✍
SelTrack Track mode select T/F
Table 49 Block parameters
HA082375U003
Issue 33 August 2019 Page 152
SIM CONTROL FUNCTION BLOCKS
HA082375U003
Page 153 Issue 33 August 2019
CONTROL FUNCTION BLOCKS AN_CONN
Block function
Alm_Conn
8 bits
PVn
n = 1 to 8
HRn
n = 1 to 8
LRn
n = 1 to 8
Please refer to Figure 30. The Analogue Connection block collects and retransmits up to 24 analogue signals, together
with a set of eight digitals. The analogues are grouped into eight sets of PV, HR, and LR signals to correspond to the trio
of analogue outputs from a single ANIN block. The main use of the AN_CONN block is to collect into a single block
the signals from up to eight ANIN blocks, running in an I/O module, before transmitting them across the LIN (to a cached
AN_CONN block). The Alm Conn connections allow for one chosen digital (usually an alarm output) to be transmitted
from each ANIN block, although the connections can actually be used for any purpose.
The benefits of transmitting analogue signals across the LIN via AN_CONN blocks are: fewer blocks to cache, less
network traffic, and faster block scanning because less time is spent on network activity. The block can also be used to
buffer and synchronise data transmitted across the LIN.
Block parameters
Symbols used in Table 50 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 154
AN_CONN CONTROL FUNCTION BLOCKS
HR1, LR1 to HR8, LR8. Analogue inputs retransmitted as outputs, which range the corresponding PV1 to PV8
parameters. Normally, but not necessarily, these range parameters would be connected to the appropriate HR and LR of
the ANIN block providing PV; but they can equally be used to re-range the PVs to other values if required.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
HA082375U003
Page 155 Issue 33 August 2019
CONTROL FUNCTION BLOCKS DG_CONN
Block function
Alm_Conn
8 bits
W Field1 B Field1
16 bits 8 bits
W Field2 B Field2
16 bits 8 bits
W Field3 B Field3
16 bits 8 bits
W Field4 B Field4
16 bits 8 bits
Please refer to Figure 31. The Digital Connections block collects and retransmits a total of up to 104 digital signals. The
digitals are grouped for convenience into four 16-bit words (W Field1 to W Field4), four 8-bit bytes (B Field1 to B
Field4), plus an 8-bit Alm Conn field. This capacity would allow a single DG_CONN block to collect the strategy input
signals from up to thirteen DGIN_8 blocks, running in an I/O unit, before transmitting them across the LIN (to a
corresponding cached DG_CONN block). Alternatively, with fewer pooled DGIN blocks, additional associated signals
(e.g. status outputs) could be collected and transmitted. In fact the connections can be used for any digital signals, from
any blocks.
NOTE The connections should not be used for alarms, because they do not revert to the alarm state (i.e. fail
safe) in the event of a block communications software alarm.
The benefits of transmitting digital signals across the LIN via DG_CONN blocks are: fewer blocks to cache, less network
traffic, and faster block scanning because less time is spent on network activity. The block can also be used to buffer and
synchronise data transmitted across the LIN.
HA082375U003
Issue 33 August 2019 Page 156
DG_CONN CONTROL FUNCTION BLOCKS
Block parameters
Symbols used in Table 51 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 157 Issue 33 August 2019
CONTROL FUNCTION BLOCKS TP_CONN
Block function
The TP_CONN block allows up to nine fields to be specified for saving to E2PROM as part of the ‘tepid data’ at power-
down. Should there be a subsequent ‘tepid start’, these fields are restored to the values they had at the time of power-
down, see relevant T600 Series product literature for tepid start and tepid data information.
The nine fields are specified by block name (in the Blockn parameters) and field name (in the Fieldn parameters). They
can be in any blocks in the database, but cannot be Alarms fields, text string fields, or the EXPR field of the EXPR block.
Specifying a forbidden or non-existent field sets the corresponding BadField bit TRUE.
Only one TP_CONN block is allowed per LIN Database. Its block name is written to the T600 block’s AnConBlk
parameter.
NOTE If a TP_CONN block is named in the T600 block, this precludes the use of either an AN_CONN or a
DG_CONN block to specify tepid data.
Block parameters
Symbols used in Table 52 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 158
SETPOINT CONTROL FUNCTION BLOCKS
Block function
SelCRem SelRem
BalSP
Detect SL
CompREM change
ComRemSP LOCAL
TRACK
Limit to
RemoteSP
REMOTE HL_SL SL +
LOCAL LL_SL
FALSE
SP
TRACK
DisSL_RL
SP_Track
EnbTrack
TrimSP
A FlashPV ALARM PROCESSING
B-A
PV* Flash HAA HighAbs
B BARGRAPH Abs Alm
Scale to LAA LowAbs
PV DEVIATION Flash
HR_SP
BARGRAPH Abs/Dev
LR_SP HDA HighDev
SP* Flash
BARGRAPH Dev Alm LDA LowDev
FlashSP SP PV Dev’n
Limit to FALSE A
Apply
HL_SP RateLim
LL_SP Error
TRUE
*PV & SP bargraph outputs are linked to the T600 fascia displays
only if the block’s assigned loop is the one selected for main display.
Please refer to page 140 for usage implications when using this block and the schematic in Figure 32. The SETPOINT
block is intended to be used as part of the SETPOINT/3_TERM/MAN_STAT/MODE combination of control blocks,
which gives more flexibility than the simple PID block. The block generates a read-only resultant setpoint SP from a
variety of sources, subjecting it to high/low limits, trim, rate limits, and providing absolute and deviation alarms.
HA082375U003
Page 159 Issue 33 August 2019
CONTROL FUNCTION BLOCKS SETPOINT
Block parameters
Symbols used in Table 53 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 160
SETPOINT CONTROL FUNCTION BLOCKS
HA082375U003
Page 161 Issue 33 August 2019
CONTROL FUNCTION BLOCKS SETPOINT
Hyst. Specifies a hysteresis value, in engineering units, on the absolute and deviation alarms. Once an alarm has been
annunciated, it is not cleared until the value causing the alarm has returned inside the limit by an amount specified by the
hysteresis parameter.
Dis_DP. Specifies the position of the decimal point in the T600 front-panel 5-digit display. The permitted range of
Dis_DP is 0 to 4, which defines the number of digits to appear after the decimal point.
DevnBar. (Abs_PV,1/2/3,1/5/10,10/20/30). Specifies the graduations and usage of the T600 front-panel summary
deviation bargraph attached to this block. Abs_PV configures it as an ‘absolute PV’ bargraph, with each LED segment
representing 16.67% of the PV’s range. 1/2/3, 1/5/10, and 10/20/30 make it a deviation bar with graduations of 1-2-3,
1-5-10 and 10-20-30 % deviation per segment, respectively.
RateLim. Rate-of-change limit for SP, in engineering units per second or per minute (as specified by the TimeBase
parameter). Rate-limiting is applied only if Options.SelRate is TRUE, and if the block is not in track mode.
TimeBase. (Secs/Mins). Specifies time units for the rate-limiting parameter RateLim.
Options. Bitfield specifying the operating mode, and various other operational options of the block. The following
is given in addition to Table 53 and Figure 32.
Show_SP. The value of SP appears on the T600 front panel SP-W bargraph only if the user task (loop) to which
the block is assigned is selected as the main loop display. With Options.Show_SP TRUE, SP is also shown
numerically in the 5-digit display.
Status.
BalSP. This flag sets TRUE (for one block iteration only) if the value of SL has changed at this iteration, and the
block is not in a remote mode. This occurs if SL has been written to directly, or if the raise/lower front-panel
pushbuttons have been used. BalSP is also TRUE if the change in SL is due to a change into one of the remote
modes or a change between remote modes.
BalSP can be connected to the SPbal input of the 3_TERM block, to prevent ‘kicks’ in the controller output when
this occurs, see 3_TERM: Incremental PID Block section.
HA082375U003
Issue 33 August 2019 Page 162
3_TERM CONTROL FUNCTION BLOCKS
PV dI
LoLimFrc
SP dD
INVERSE
PID CALCULATION
HR_SP TS
(once per TS repeat time)
LR_SP SelTrack
XP AUTO
‘dPID’ + dOP
TI
Integral
TD desaturation TRACK
Derive
dOP
TrisSamp
HighLim AUTO
SPbal
LowLim + OP
DisSPbal
TRACK
FrcHiLim TRUE FALSE
FrcLoLim 0 (Disable)
CHECK LIMITS: Derive
Compare dFF FFenable
FB_OPP & OP
_ + _ +
FF_PID
FB_OP
YES
OPn-1
NO
Is OPn-1
connected?
Please refer to the Block schematic in Figure 33. The 3_TERM block is an incremental form of Proportional-Integral-
Derivative control block, intended to be used as part of the SETPOINT/3_TERM/MAN_STAT/MODE combination of
control blocks, which gives more flexibility than the simple PID block. The block generates an incremental output dOP,
suitable for driving incremental-type actuators, and also a normal output OP.
The 3_TERM block derives the incremental output dOP, and the normal output OP, at the nth iteration, as:
dOPn = – (100/XPn)[ΔERn + (TSn/TIn)ERn + (TDn/TSn)Δ2PVn] + ΔFF_PIDn,
and OPn = OPn–1 + dOPn
where dOP, OP, PV, SP, XP, TS, TI, TD, FB_OP, and FF_PID are parameters defined in the Block specification
menu section below, and
ΔFF_PIDn = FF_PIDn – FF_PIDn–1
ERn = PVn – SPn
ΔERn = ERn – ERn–1
Δ2PVn = ΔPVn – ΔPVn–1
ΔPVn = PVn – PVn–1
ΔSPn = SPn– SPn–1.
This form of the PID algorithm has certain advantageous features, including:
Tuning constants can be changed dynamically without causing ‘bumps’ in the output.
Boundless raise/lower valve position control is easy to emulate.
HA082375U003
Page 163 Issue 33 August 2019
CONTROL FUNCTION BLOCKS 3_TERM
Block parameters
Symbols used in Table 54 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 164
3_TERM CONTROL FUNCTION BLOCKS
HA082375U003
Page 165 Issue 33 August 2019
CONTROL FUNCTION BLOCKS 3_TERM
InvPID. Selects 3-Term control action sense. With InvPID FALSE an increase in the error term (PV – SP)
produces a corresponding decrease in the 3-Term output to compensate. With InvPID TRUE, increasing the error
produces a corresponding increase in the 3-Term output to compensate.
SPbal. Used to avoid ‘proportional kick’ in the control output that can occur with SP-changes. It does this by
deriving the proportional term from PV-changes rather than error-changes. Specifically, a TRUE input to SPbal sets
ΔSPn (i.e. SPn – SPn–1) to zero for one iteration of the PID algorithm. Note that the Options.DisSPbal bit must be
FALSE for SPbal to function.
SPbal is intended to be connected from the SETPOINT block’s Status.BalSP output, so that manual writes to SL -
locally or via the supervisor communications - do not cause controller output ‘kicks’.
DisSPbal. TRUE disables the action of the SPbal bit.
FFenable. Enables the application of the feedforward term, FF_PID, to the dOP output. Note that in absolute
PD mode (Options.AbsNoI TRUE), feedforward cannot be disabled and FFenable is ignored.
SelTrack. Selects TRACK mode. This disables PID action and forces OP to track FB_OP (fedback output, after
any limiting), and dOP to be derived from this.
With SelTrack TRUE, all intermediate accumulators are zeroed and internal stores of previous iteration values of PV
and FF_PID are set to equal their current values (e.g. PVn–1 = PVn) to ensure fully bumpless transfer back to PID
control.
SelOnOff. Selects on/off control mode, with a deadband (hysteresis) specified by DeadBand, operating above
or below the setpoint, as specified by the HiDband and LoDband bits.
DeadBand PV
SP
HR_OP
OP
LR_OP
PV
DeadBand
SP
HR_OP
OP
LR_OP
HA082375U003
Issue 33 August 2019 Page 166
3_TERM CONTROL FUNCTION BLOCKS
DeadBand ÷ 2 PV
DeadBand ÷ 2
SP
HR_OP
OP
LR_OP
HiDband, LoDband. Select a ‘high’ deadband (Figure 34) or a ‘low’ deadband (Figure 35), respectively, in
on/off control mode, of width specified by DeadBand. With both bits TRUE, a pair of deadbands operate about SP
(Figure 36). Both bits FALSE disables the deadband completely.
AbsNoI. With TI = 0 to disable the integral term, set AbsNoI TRUE to select an absolute (non-incremental) PD
algorithm in which dP, dI, dD, and dOP are disabled (zero).
FrcHiLim, FrcLoLim. TRUE forces the PID algorithm to act as if the output is being high-limited, or low-
limited, respectively, and integral desaturation is therefore applied.
Status. Bitfield indicating the status of the PID algorithm.
LowLim. TRUE indicates that OP is below a low limit, i.e. below the fed-back (limited) output, or is being
forced to act as if it were (by FrcLoLim).
HighLim. TRUE indicates that OP is above a high limit, i.e. above the fed-back (limited) output, or is being
forced to act as if it were (by FrcHiLim).
ThisTime. TRUE indicates that the PID algorithm has been updated during this iteration of the 3_TERM block.
HiLimFrc. TRUE indicates that the HighLim parameter is TRUE (or with inverse-acting output, that LowLim is
TRUE). This output is intended to be used to force a master controller block to act as if in limit, e.g. in a cascade
pair.
LoLimFrc. TRUE indicates that the LowLim parameter is TRUE (or with inverse-acting output, that HighLim is
TRUE). This output is intended to be used to force a master controller block to act as if in limit, e.g. in a cascade
pair.
FF_PID. Feed-forward. Used to add a bias to the 3-term output. This is sometimes called ‘manual reset’.
NOTE. FF_PID is ranged ±(HR_OP – LR_OP).
FB_OP. A fedback value of OP from the last iteration of the PID block, after it has been subjected to any external
limiting. FB_OP is used to hold the output value when in track mode, and also to detect output-limiting - by comparing
it with OP - so that integral desaturation can be applied.
DeadBand. Specifies the breadth of the deadband(s) to be applied when the block is in on/off control mode.
Options.HiDband and Options.LoDband determine how the deadband(s) operate(s) about SP, see Figure 34, Figure 35,
and Figure 36.
NOTE With both HiDband and LoDband FALSE, deadband action is disabled; with both parameters TRUE,
half the deadband is applied to each side of SP.
HA082375U003
Page 167 Issue 33 August 2019
CONTROL FUNCTION BLOCKS MAN_STAT
Block function
DIS_M_RL Track InitDmnd InDmdRst HR_OP
FALSE
InDmdPwr LR_OP
M MANUAL TRACK INIT
HOLD Limit to
TRUE HL_OP Demand
SAFE LL_OP
AUTO HOLD
PV TRACK NORMAL
NotAuto
SelMan
OUTPUT*
MPosDisp LL_OP BARGRAPH
FailSafe
TRUE FALSE
TRUE MeasPos HL_OP UBarDisp
HR_OP
TRUE
LR_OP FALSE
FALSE SelRate
TRUE
SafeHigh FALSE FALSE
*Linked to the real fascia display only if the associated loop is the one selected for main loop display
Figure 37 Block schematic
Please refer to page 140 for usage implications when using this block and the schematic in Figure 37. The MAN_STAT
block is intended to be used as part of the SETPOINT/3_TERM/MAN_STAT/MODE combination of control blocks,
which gives more flexibility than the simple PID block.
In automatic mode the output OP follows the input PV, typically a 3_TERM block output, subject to high/low- and rate-
limiting. In manual mode the operator can use the raise/lower T600 front-panel pushbuttons to vary OP, within the limits.
In track mode (highest priority), OP is derived from the Track parameter and remains high/low- (but not rate-) limited.
A hold mode is provided to ‘freeze’ both OP and the Demand parameter. The block’s MeasPos and MPosDisp
parameters let you select between displaying a ‘measured position’ or OP on the T600 output bargraph, and with
UBarDisp you can drive each bargraph segment directly from the strategy (via the UserBar bitfield). The block also
drives the H and T LEDs below the associated loop’s deviation bargraph.
Note that the output bargraph is driven only if this block’s user task is the one selected for main loop display.
HA082375U003
Issue 33 August 2019 Page 168
MAN_STAT CONTROL FUNCTION BLOCKS
Block parameters
Symbols used in Table 55 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 169 Issue 33 August 2019
CONTROL FUNCTION BLOCKS MAN_STAT
HA082375U003
Issue 33 August 2019 Page 170
MAN_STAT CONTROL FUNCTION BLOCKS
Status.
NotAuto. Indicates that the manual station is not operating in auto mode.
UserBar. The ten digital inputs UserBar.Bit0 (left-most segment) to UserBar.Bit9 (right-most segment) allow the
strategy to drive the T600 front-panel output bargraph segments directly and individually. UserBar is connected to the
real front panel only if the Options.UBarDisp bit is TRUE, and the block’s associated user task is the one selected for
main loop display.
HA082375U003
Page 171 Issue 33 August 2019
CONTROL FUNCTION BLOCKS MODE
Block function
* Connected to the real
T600 front panel only if SelDisp
KillLEDs
SelMan
SelRem SelAuto SelFMan
RELEASE
RELEASE F_MAN
REMOTE
Please refer to page 140 for usage implications when using this block and the schematic in Figure 38. The MODE block
is intended to be used as part of the SETPOINT/3_TERM/MAN_STAT/MODE block combination, which gives more
flexibility than the simple PID block.
The block operates a ‘prioritised latching mode control’ algorithm, schematised in Figure 38 by a series of switches, some
of them latching. The position of each switch along the route to the Mode parameter determines the priority of the
operating mode selected by that switch. E.g. F_MAN (forced manual) mode, while selected by SelFMan being TRUE,
overrides all other modes because its switch is closest to the Mode parameter. Conversely, F_AUTO (forced auto) and
REMOTE modes have the lowest priority as their switch is furthest from Mode and so can be overridden by any of the
others.
The MANUAL and AUTO switches are latching, i.e. they remain ‘on’ even if the TRUE condition that turned them on
goes FALSE. If this happens, a latched MANUAL switch can be released by selecting either AUTO or ‘remote’, and
both MANUAL and AUTO are released by selecting ‘remote’.
The operating mode actually in force is indicated by Mode, and is available as an output via the ModeSel bits. The
fallback mode, held in FallBack, is not available as an output and is for monitoring purposes only. The source of FallBack
is schematised in Figure 38 as a second series of switches ‘ganged’ to the corresponding mode selection switches.
When the associated user task has been assigned for main loop display, the MODE block drives the R, A, and M T600
front-panel pushbutton LEDs, and the mode characters under the loop’s deviation bargraph. The pushbutton LEDs can
be disabled via the KillLEDs input (in the Options bitfield). R, A, and M pushbutton masks are available to prevent
unwanted operator mode-changes, via the PBmasks inputs. All eight front-panel pushbuttons are latched on a per-task-
execution basis, so that fleeting button-pushes are not missed by the task. These latched depressions are also available
as outputs via the PBTests bitfield, for use by other blocks in the task.
HA082375U003
Issue 33 August 2019 Page 172
MODE CONTROL FUNCTION BLOCKS
Block parameters
Symbols used in Table 56 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 173 Issue 33 August 2019
CONTROL FUNCTION BLOCKS MODE
HA082375U003
Issue 33 August 2019 Page 174
MODE CONTROL FUNCTION BLOCKS
HA082375U003
Page 175 Issue 33 August 2019
CONTROL FUNCTION BLOCKS PID_CONN
Block function
The PID_CONN block has the same template (block specification menu) as the PID block, but is used as a ‘faceplate
block’ for the SETPOINT/3_TERM/MAN_STAT/MODE block combination. The PID_CONN block automatically
associates itself with the appropriate blocks in the same loop; it can then be cached where it may be used for faceplate
display.
Most of the PID_CONN fields are direct copies of the equivalent fields in the associated SETPOINT, 3_TERM,
MAN_STAT, or MODE blocks. Writes, or attempted writes, to these fields are re-directed to the corresponding fields in
the actual source block. Some PID_CONN fields are more complicated logical derivatives of source fields. Note that if
the PID_CONN block cannot find sources for any of its fields, these fields are not overwritten and become available for
local data storage. The PID_CONN field sources are listed in Table 57.
NOTE Wiring. When using a PID_CONN block to concentrate SETPOINT/3_TERM/MAN_STAT/
MODE blocks, you should wire consistently. Connect strategy wiring into either the PID_CONN block, or the
true source blocks, but not both. This applies equally to wiring into cached copies of remote source blocks,
especially when bitfields are involved. Wiring into individual bits of bitfields at different locations can cause
some wires to fail.
Alarm processing
Although the values of HAA, LAA, HDA, and LDA are copies of the equivalent values in the SETPOINT block, the alarm
processing is performed locally in the PID_CONN block. This allows different alarm priorities to be selected, making it
possible to process alarms in one block only.
PV SETPOINT.PV
SP SETPOINT.SP
OP MAN_STAT.Demand
SL SETPOINT.SL
TrimSP SETPOINT.TrimSP
RemoteSP SETPOINT.RemoteSP/ComRemSP (depends on Mode)
Track MAN_STAT.Track
HR_SP SETPOINT.HR_SP
LR_SP SETPOINT.LR_SP
HL_SP SETPOINT.HL_SP
LL_SP SETPOINT.LL_SP
HR_OP MAN_STAT.HR_OP
LR_OP MAN_STAT.LR_OP
HL_OP MAN_STAT.HL_OP
LL_OP MAN_STAT.LL_OP
HAA SETPOINT.HAA
LAA SETPOINT.LAA
HDA SETPOINT.HDA
LDA SETPOINT.LDA
TimeBase 3_TERM.TimeBase
XP 3_TERM.XP
TI 3_TERM.TI
TD 3_TERM.TD
Continued...
HA082375U003
Issue 33 August 2019 Page 176
PID_CONN CONTROL FUNCTION BLOCKS
FF_PID 3_TERM.FF_PID
FB_OP 3_TERM.FB_OP
Table 57 PID_CONN block field sources
HA082375U003
Page 177 Issue 33 August 2019
CONTROL FUNCTION BLOCKS PID_LINK
Block function
The PID_LINK block has almost the same template (block specification menu) as the PID_CONN and PID blocks, and
is used as a ‘faceplate block’ for the SETPOINT/3_TERM/MAN_STAT/MODE block combination. You link the
PID_LINK block to these four control blocks by entering their tagnames in four special fields, SPblock, T3block,
MSblock, and MDblock, respectively. The block can then be cached to a supervisory computer where it may be used for
faceplate display.NOTE. The PID_LINK block must be running in the same database as the control blocks that it links
to, i.e. local to the SETPOINT/3_TERM/MAN_STAT/MODE blocks, and not cached. The PID_LINK block should also
be local to any blocks that reference it, e.g. the SL6366R or SL6360R blocks.
Most of the PID_LINK fields are direct copies of the equivalent fields in the associated SETPOINT, 3_TERM,
MAN_STAT, or MODE blocks. Writes, or attempted writes, to these fields are re-directed to the corresponding fields
in the actual source block. Some PID_LINK fields are more complicated logical derivatives of source fields. Note that
if the PID_LINK block cannot find sources for any of its fields, these fields are not overwritten and become available for
local data storage. The PID_LINK field sources (and the four tagname fields) are listed in Table 58.
NOTE Wiring. When using a PID_LINK block to concentrate SETPOINT/3_TERM/MAN_STAT/MODE
blocks, you should wire consistently. Connect strategy wiring into either the PID_LINK block, or the true
source blocks, but not both. This applies equally to wiring into cached copies of remote source blocks,
especially when bitfields are involved. Wiring into individual bits of bitfields at different locations can cause
some wires to fail.
Alarm processing
Although the values of HAA, LAA, HDA, and LDA are copies of the equivalent values in the SETPOINT block, the alarm
processing is performed locally in the PID_LINK block. This allows different alarm priorities to be selected, making it
possible to process alarms in one block only.
HR_SP SETPOINT.HR_SP
LR_SP SETPOINT.LR_SP
HL_SP SETPOINT.HL_SP
LL_SP SETPOINT.LL_SP
HR_OP MAN_STAT.HR_OP
LR_OP MAN_STAT.LR_OP
HL_OP MAN_STAT.HL_OP
LL_OP MAN_STAT.LL_OP
HAA SETPOINT.HAA
LAA SETPOINT.LAA
HDA SETPOINT.HDA
LDA SETPOINT.LDA
Continued...
HA082375U003
Issue 33 August 2019 Page 178
PID_LINK CONTROL FUNCTION BLOCKS
FF_PID 3_TERM.FF_PID
FB_OP 3_TERM.FB_OP
SPblock Tagname of linked SETPOINT block [Alphanumeric]
T3block Tagname of linked 3_TERM block [Alphanumeric]
MSblock Tagname of linked MAN_STAT block [Alphanumeric]
MDblock Tagname of linked MODE block [Alphanumeric]
Table 58 PID_LINK block field sources
HA082375U003
Page 179 Issue 33 August 2019
CONTROL FUNCTION BLOCKS AN_DATA
Block function
Ax
This block collects up to 100 analogue signals, derived from the CARB_DIFF block, defined in CarbnBlk. The collected
values are the result of the Carbon Diffusion calculation generated via the CARB_DIFF block. Values from the
CARB_DIFF block can be used to present a Carbon Diffusion curve on an Eycon Visual Supervisor screen.
NOTE This block functions using a number of pages. Fields can be located using
<Page>.<Field>.<Subfield> convention.
Block parameters
Symbols used in Table 59 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 180
AN_DATA CONTROL FUNCTION BLOCKS
HA082375U003
Page 181 Issue 33 August 2019
CONTROL FUNCTION BLOCKS LOOP_PID
Block function
PID Tuning
(PID page)
Error Control
SetPoint Loop
(SP page)
Generator
PV
Status Values
(Diag page)
Operating
Values Heater
(Main page) Measured
Temperature
Please refer to the schematic in Figure 40. This block supports two outputs, Channel 1 and Channel 2 and has parameters
used to configure the control, e.g. Ch1Ctrl and Ch2Ctrl, and tuning, e.g. PB1, Ti1, and Td1, automatically or manually,
of a control loop. Each channel can be configured for PID, On/Off or Valve Position (bounded, VPB or unbounded, VPU)
loop control. However, Channel 2 is generally used for the cooling process of the loop control. A single PID set of tuning
parameters are included in the block, but up to seven additional PID sets of tuning parameters can be used by referencing
individual TUNE_SET blocks, see PID.Set2 to PID.Set8.
NOTE This block functions using a number of pages. For display purposes, fields can be located using
<Page>.<Field>.<Subfield> convention.
The LOOP_PID block is updated each task execution and is used to automatically control a process to an operating point,
Setpoint. The Setpoint of a control loop may be static or moving under the supervision of a program or remote system.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
NOTE The Alarms fields in this block appear on all pages.
Parameter Function Units Status
Main Page
Mode Current operating mode Enum
AutoMan Operating mode control Enum
PV Process Variable (PV) Eng
PVStat Condition of PV Enum
Inhibit Control inhibit Enum
TargetSP Target Setpoint value Eng
WSP Working Setpoint value Eng
Alarms These alarms appear on all pages in the block
Software Block data sumcheck error/network failure T/F
HiHi High high absolute alarm limit exceeded T/F
Hi High absolute alarm limit exceeded T/F
Lo Low absolute alarm limit exceeded T/F
LoLo Low low absolute alarm limit exceeded T/F
Continued...
HA082375U003
Issue 33 August 2019 Page 182
LOOP_PID CONTROL FUNCTION BLOCKS
HA082375U003
Page 183 Issue 33 August 2019
CONTROL FUNCTION BLOCKS LOOP_PID
HA082375U003
Issue 33 August 2019 Page 184
LOOP_PID CONTROL FUNCTION BLOCKS
HA082375U003
Page 185 Issue 33 August 2019
CONTROL FUNCTION BLOCKS LOOP_PID
HA082375U003
Issue 33 August 2019 Page 186
LOOP_PID CONTROL FUNCTION BLOCKS
Hi, Lo. Asserted, if the value shown in PV is greater than Alarms.Hi, High Absolute Alarm Limit, and less than
Alarms.Lo, Low Absolute Alarm Limit. The alarms do not clear until PV has returned within these levels by more
than the value specified in Alarms.Hyst.
HiHi, LoLo. Asserted, if the value shown in PV is greater than Alarms.HiHi, High High Absolute Alarm Limit,
and less than Alarms.LoLo, Low Low Absolute Alarm Limit. The alarms do not clear until PV has returned within
these levels by more than the value specified in Alarms.Hyst.
DevHi, DevLo. Asserted, if the error (PV - SP) is greater than Alarms.DevHi, High Deviation Alarm Limit, or
the error (SP - PV) is less than Alarms.DevLo, Low Deviation Alarm Limit. The alarms do not clear until Error has
returned within these levels by more than the value specified in Alarms.Hyst.
LpBreak. Asserted, if Diag.LpBreak is set Yes.
SensorB. Asserted, if Diag.SensorB is set to Yes.
Combined. Asserted, if any alarm is active in the block. Adopts the same status message and priority number
as the block’s highest priority active alarm.
WrkOP. The total output of the loop prior to dividing Channel 1 and Channel 2 outputs.
IntHold. (Yes/No). If YES, the integral component of the PID calculation will be frozen. It will hold at its current
value but will not integrate any disturbances in the plant. This is equivalent to switching to PD control using a
preconfigured manual reset value.
SelMode. Bitfields used to select controller modes via digital inputs from the strategy.
EnaRem. TRUE enables Remote mode operation. FALSE disables Remote mode operation. Control is
transferred to Automatic mode when changing from TRUE to FALSE during Remote mode.
SelAuto, SelMan. Set TRUE for Automatic operation, unless SelMode.SelMan shows TRUE. Manual
operation is specified when SelMode.SelMan is TRUE.
ModeSel. Bitfields showing the modes that have been requested but not operational. The mode with the highest
priority is determined as the active mode.
TrackSel. Shows TRUE if OP.TrackEn is On indicating loop output tracking is requested.
RemSel. Shows TRUE if SP.AltSPEn is Yes indicating the use of an Alternate (Remote) Setpoint is requested.
AutoSel. Shows TRUE if Main.AutoMan is Auto indicating Automatic mode is requested.
ManSel. Shows TRUE if Main.AutoMan is Man indicating Manual mode is requested.
FManSel. Shows TRUE if Main.PVstat is Bad indicating Forced Manual mode is requested.
NOTE To enable the user to write the required value for Main.WrkOP via OP.ManOP when in Forced
Manual mode (ModeSel.FManSel is TRUE) this bitfield must be connected to SelMode.SelMan. This will set
the operating mode of the instrument to Manual (SelMode.SelMan shows TRUE) after the configured sensor
break action (OP.SbrkMode) has been applied for a single database iteration only.
TuneSel. Shows TRUE if Tune.Enable is On. This indicates automatic control loop tuning is requested.
PCalSel. Shows TRUE if OP.PotCal is On. This indicates calibration of the potentiometer is requested.
InhibSel. Shows TRUE if Main.Inhibit is Yes. This indicates a command to stop the control and output of the
loop and set the safe output value (OP.SafeOP) is requested.
ModeAct. Bitfield showing the block’s active mode, i.e. the value shown in Main.Mode. Only one ModeAct bit can
be TRUE at a time.
NotRem. Output connection from the slave controller into the master for cascade control applications. This
connection is TRUE when the slave controller is not operating in Remote mode (ModeSel.RemSel is FALSE). This
output should be connected into SelMode.SelTrack on the master controller.
TrackAct, RemAct, AutoAct, ManAct, FManAct, TuneAct, PCalAct, InhibAct. Only the bitfield
corresponding to the value shown in Main.Mode is set TRUE indicating the Mode currently active.
HA082375U003
Page 187 Issue 33 August 2019
CONTROL FUNCTION BLOCKS LOOP_PID
Setup Page
This page is used to configure the control loop operation.
Ch1Ctrl, Ch2Ctrl. (Off/On/PID/VPU/VPB). Selects an algorithm for channel 1 and channel 2. In temperature
control applications, Channel 1 is usually the heating channel, Channel 2 is the cooling channel.
Off. The channel Control Output is not configured.
On. The channel Control Output is configured as On/Off. This is the simplest means of control but gives rise to
fluctuations in the PV. A degree of hysteresis or deadband must be set in On/Off control if the operation of the
switching devices is to be reduced and relay chatter to be avoided. This form of control leads to oscillation of the
PV that can affect the quality of the final product and is undesirable. The alternative is to use Three (3-)Term
Control, known as PID control.
PID. The channel Control Output is configured as PID control. PID, or 3-Term Control, is an algorithm that
controls the process to a Setpoint. PID provides more stable control by continuously adjusting the output to
compensate for the Diag.Error, the rate of change or the error plus any continuous offsets.
PB_Units. (EngUnits/%). Configures the presentation style of the instruments Proportional Band. When set as %, it
shows a percentage of the loop span, derived from the SP.RangeHi to SP.RangeLo values.
DerivTyp. (PV/Error). Defines when the derivative calculation occurs. When set as PV, the derivative only occurs
when PV changes. When set as Error, the derivative occurs when either PV or Setpoint changes.
Alarms. See Main.Alarms and Appendix D page 545 for a description of the Alarms field.
Tune Page
This page is used to automatically configure, Auto Tune, the control for optimum performance.
Enable. (Off/On). Start the Auto Tune process. When starting a one minute delay occurs, allowing any loop control
to settle. During this time the loop Setpoint can be edited. It is best to start tuning with the process at ambient temperature.
This allows the tuner to calculate the Cutback High, PID.CBH1, and Cutback Low, PID.CBL1, values more accurately.
When tuning is complete, the control parameters are adjusted to best suit the characteristics of the load.
HA082375U003
Issue 33 August 2019 Page 188
LOOP_PID CONTROL FUNCTION BLOCKS
NOTE Care must be taken to ensure oscillations of the PV will not damage the PV
process being tuned. It is recommended that the Setpoint for tuning is set below Setpoint
the normal running Setpoint value.
The ‘one-shot’ tuner works by switching the output on and off to induce an oscillation in Time
the measured value. From the amplitude and period of the oscillation, it calculates the One-Shot Tuning
tuning parameter values. Some processes will not tolerate full heating or cooling being
applied during tuning, so the level of heating or cooling can be restricted by setting the heating and cooling power limits.
However, the measured value must oscillate to some degree for the tuner to be able to calculate values.
A one-shot tune can be performed at any time, but is normally performed only once during the initial commissioning of
the process. However, if the process under control becomes unstable (because some characteristics have changed), it can
be re-tuned.
HiOutput, LoOutput. Specifies the maximum (Tune.HiOutput) and minimum (Tune.LoOutput) percentage (%)
output power level supplied during the automatic tuning process. The Auto Tune outputs will be clipped to the
appropriate value.
R2G. Determines whether R2G derivation is derived during auto tuning. The default value is ‘Yes’, meaning R2G
derivation is derived.
Alarms. See Main.Alarms and Appendix D page 545 for a description of the Alarms field.
State. (Off/Running/Ready/Complete/Timeout/Ti_Limit/R2G_Limit). Reads and shows the condition of the Auto
Tune function. Off, set when Main.Inhibit is set Yes, Running, Ready, and Complete indicate the various states of the
Auto Tune function. Timeout, Ti_Limit, and R2G_Limit are error conditions. Timeout, occurs if any one stage is not
completed within one hour, generally caused by an open loop, or if there is no response to the demand from the control.
A very heavily lagged system can also produce a timeout if the cooling rate is very slow. Ti_Limit, occurs if Auto Tune
calculates a value for the Integral time greater than the maximum allowable Integral time setting, i.e. 99999 seconds,
indicating the loop is not responding or tuning is taking too long. R2G_Limit, occurs if the calculated R2G value is
outside the range 0.1 and 10.0. It can be caused if the gain difference between heating and cooling is too large, or if during
heat/cool control, when heating or cooling is turned off or not working correctly.
Stage. (Reset/None/Monitor/CurrentSP/NewSP/ToSP/Max/Min). Shows the current stage of the Auto Tune function.
Reset indicates Main.Inhibit has been set to Yes, Tune.State shows Off, cancelling and resetting the tuning function.
ToSP indicates the heat, or cool output is on. Max and Min indicate the power output is on or off, respectively.
StageTim. Shows the time taken since Tune.Stage changed.
PID Page
This page is used to configure the PID control for optimum performance.
Integral Action and Manual Reset. In 3-term control (or PID control), the integral term ‘Ti1’ (or Ti in an
associated Tune_Set block) automatically removes steady state errors from the Setpoint. If control is operating in 2-
term mode (PD mode), the Integral term is set OFF. Under these conditions the measured value may not settle
precisely at Setpoint, causing the manual reset parameter to represent the value of the power output that will be
delivered when the error is zero. This value must be set manually in order to remove the steady state error.
Loop Response. The combination of correctly set P, I and D terms provide a stabilizing effect on a process, but
depend totally on the nature of the process to be controlled. Balancing these terms is referred to as tuning the loop.
Incorrect tuning causes poor loop response described as,
Under Damped, indicates that oscillation is prevented, but leads to an overshoot of PV followed by decaying
oscillation to finally settle at the Setpoint. This type of response achieves Setpoint in the minimum time, but
overshoot may cause problems and the loop can be sensitive to sudden changes in PV. This can result in further
decaying oscillations before settling once again.
Critically Damped, indicates that overshoot does not occur and the process responds to changes in a controlled,
non oscillatory manner.
Over Damped, indicates that the loop responds in a controlled but sluggish manner that results in a loop
performance that is not ideal and unnecessarily slow.
HA082375U003
Page 189 Issue 33 August 2019
CONTROL FUNCTION BLOCKS LOOP_PID
NOTE In plastics extrusion, a barrel zone has a different response to a casting roll, drive loop, thickness
control loop or pressure loop. Best performance is achieved when all loop tuning parameters are set to the
optimum values.
SchedTyp. (Off/Set/SP/PV/Error/OP/Rem). Specifies the method of transferring control between both upper and
lower boundaries of PID sets.Gain Scheduling is provided to allow different tuned PID sets to function at different
temperatures, used in some processes. Gain Scheduling uses a loop parameter, e.g. PV or Setpoint, to select the active
PID set, but can also apply specific PID settings at different operating points of the process.
Off. A PID set is not used.
Manual. A PID set can be selected by the operator. The selection of the required set can be controlled if blocks
are wired correctly.
SP. The PID set selection is derived from the Working SetPoint value, Main.WSP, and includes an internally
defined hysteresis of 0.1% of the loop span.
PV. The PID set selection is derived for the measured PV, Main.PV, and includes an internally defined hysteresis
of 0.1% of the loop span.
Error. The PID set selection is derived from the difference between the PV and the SP, Diag.Error, and includes
an internally defined hysteresis of 0.1% of the loop span.
OP. The PID set selection is derived from the Working OutPut value, Main.WrkOP, and includes an internally
defined hysteresis of 0.5% of the output span.
Remote. The PID set selection is derived from the input value from a remote parameter, SP.RemInput, and
includes an internally defined hysteresis of 0.1% of the loop span.
NumSets. Specifies the maximum number of permitted PID sets. Each additional configured PID set is configured in
an individual Tune_Set block, and is associated using PID.Set2 to PID.Set8.
RemInput. Specifies that value that causes the selection of a configured PID set, if PID.SchedTyp is set to REMOTE.
ActivSet. Shows the PID set currently in use.
IntBal. (On/Off). Controls the Integral Balance calculation. When set On the Integral Balance calculation is applied,
preventing abrupt changes, bumps, and allows the output power to change gradually in accordance with the demand from
the PID algorithm.
PB1. Specifies the Proportional Band value in display units or %, relating to PID set 1. This delivers an output that is
proportional to the size of the error signal, over the range of PVs which linear gain action occurs before the output
saturates at maximum or minimum. This value should be set as low as possible without causing oscillation.
Output Setpoint
Proportional 10°C
100% Band
Ti1. Specifies the Integral Time value relating to the PID set 1. It is used to remove steady state control offsets by
ramping the output up or down in proportion to the amplitude and duration of the error signal. Off indicates the Integral
Time is disabled.
NOTE During Proportional only control, an error between SP and PV must exist in order to deliver power.
This can lead to the PV oscillating about the Setpoint or the PV settling at a point away from the Setpoint. By
enabling Integral action, the control will monitor the error and add further power demand to remove the steady
state errors.
Caution
The Integral Time should not be disabled (PID.Ti1 set to OFF) when Channel 1 control type (PID.Ch1Ctrl) is
set to Valve Positioner - Unbounded (VPU). This is because only through process error and integral action, can
HA082375U003
Issue 33 August 2019 Page 190
LOOP_PID CONTROL FUNCTION BLOCKS
the valve position be corrected, which could be unknown at power-up. Failure to adhere to this could result in
PID.Ch1Outpt having the value ‘*’, and the outputs toggling periodically.
Td1. Specifies the Derivative Time value relating to the PID set 1. It is used to achieve better stability, prevent
Overshoot and Undershoot and restore the PV rapidly if a change in demand occurs. Off indicates that the Derivative
Time is disabled.
A derivative action, Setup.DerivTyp, configured on PV allows changes in the Setpoint without causing the output to
bump. The derivative monitors the loops rate of change, and reacts to steps in the PV by changing the output to remove
the transient. Increasing the Derivative Time will reduce the settling time of the loop after a transient change.
NOTE If the loop control is unstable and causing excessive output changes because the derivative is
amplifying noise from the PV, it is recommended the Derivative Time is disabled, PID.Td1 set Off, and the
loop is re-tuned.
R2G1. Shows the Relative Cooling (Channel 2) Gain control output relating to the PID set 1 and is only present if
cooling has been configured. Sets the cooling Proportional Band, to a value that equals the heat Proportional Band value
divided by the cool gain value. This value compensates for the different quantities of energy needed to heat, as opposed
to that needed to cool a process.
Setpoint
Overshoot Undershoot
Setpoint
CBH1 CBL1
HA082375U003
Page 191 Issue 33 August 2019
CONTROL FUNCTION BLOCKS LOOP_PID
Tracking. Tracking modes can prevent step changes in the Setpoint when switching modes of the control, e.g. if
SP.ManTrack is enabled (Yes), the process can be started in manual mode, controlling the power, the Setpoint will
track the changes in PV. When the control is switched to automatic mode, the Setpoint will maintain the process at
the current measurement.
RangeHi, RangeLo. Specifies the Range limits that provide a set of absolute maximums and minimums for
Setpoints within the control loop. Any derived Setpoints are ultimately clipped to these Range limits. If PB_Units is set
to % of loop span, the span is derived from these values.
SPSelect. Shows the currently selected Setpoint, SP1 or SP2 of the local loop.
SP1. Shows the SetPoint 1 value. This is the primary control Setpoint.
SP2. Shows the SetPoint 2 value. This is an alternative Setpoint, generally used as a standby value.
SPHiLim, SPLoLim. Specifies the maximum and minimum Setpoint limits respectively, and limits the Setpoint
value.
AltSPEn. (No/Yes). Controls the use of an Alternate (Remote) Setpoint. When enabled (On), Main.TargetSP is
derived from SP.AltSP. This cannot be enabled when SelMode.EnaRem is FALSE (see main page).
AltSP. Shows the value derived from an Alternate (Remote) Setpoint, sourced externally to the loop. It may be wired
into the loop from an analogue input.
RateSP. Specifies the maximum Setpoint Rate Limit Value. This indicates the maximum rate that Main.WSP can
change. It is used to protect the load from thermal shock that can be caused by large step changes in Setpoint.
Value
Main.WSP
Main.PV
Main.TargetSP
RateDone. (Yes/No). Shows the Setpoint Rate Limit, SP.RateSP, has achieved target, i.e.Main.WSP value has
reached value defined in Main.TargetSP.
SPRateDs. (Yes/No). Controls the use of the Setpoint Rate Limit value. When disabled, SP.SPRateDs set Yes, the
Working Setpoint (Main.WSP) can step change, when set No, it is prevented from changing too rapidly by the rate limiter,
SP.RateSP.
ServToPV. (On/Off). Controls the starting point of Main.WSP after power cycling the instrument. When enabled
(On), the the measured PV, Main.PV, is used as a start point for the Main.WSP. This decreases the time required for the
Main.WSP to arrive at the Main.TargetSP. When disabled (Off), Main.WSPis reset and restarted.
Alarms. See Main.Alarms and Appendix D page 545 for a description of the Alarms field.
SPTrim. Specifies the offset value applied to the Setpoint. The trim can be fed to the control via an analogue input,
or from a wired function. Trims can be used in multi-zone applications to create a shaped profile along the machine.
SPTrimHi, SPTrimLo. Specifies the maximum and minimum amount of trim (SP.SPTrim) that can be added to the
Setpoint, respectively.
ManTrack. (On/Off). Controls the use of the Manual Tracking. When enabled (On), any steps in Setpoint when
switching between Manual and Automatic modes are removed. When the loop is switched from Manual to Auto, the
Setpoint is set to the current PV. This is useful if the load is started in Manual Mode, then later switched to Auto to
maintain the operating point.
SPTrack. (On/Off). Controls the use of the Setpoint Tracking. When enabled (On) the local Setpoint is selected, and
copied to SP.TrackSP. Tracking now ensures that SP.AltSP tracks this value. When the SP.AltSP is selected it initially
HA082375U003
Issue 33 August 2019 Page 192
LOOP_PID CONTROL FUNCTION BLOCKS
takes on the tracked value ensuring a bumpless transfer. This Setpoint is then adopted gradually. A similar action takes
place when returning to the local Setpoint.
TrackPV. Shows the tracked PV value when the program is tracking.
TkPVStat. Shows the condition of TrackPV, see PVStat.
TrackSP. Shows the tracked SP value when manual tracking, SP.ManTrack, is set On.
SPIntBal. (On/Off). Controls the Integral Balance calculation on change of Main.TargetSP. When set On, the
Setpoint Integral Balance calculation is applied when Main.TargetSP changes, preventing bumps, and allowing the
output power to change gradually in accordance with the demand from the PID algorithm. If set Off, the Setpoint Integral
Balance calculation is not applied when Main.TargetSP changes.
OP Page
This page is used to configure the output (OP) control, and depends on the loop configuration.
On/Off Control. Hysteresis, Deadband, Safe Output Values, Manual Output Value. The control can be
configured as a dual channel control, e.g. each channel can be configured as a different control type, i.e. PID Heat,
and On/Off Cool.
PID Control. Power limits, Power Rate Limits, Safe Output Values, Manual Output Value, Power Feedforward
settings.
Valve Position Control. Travel Times, Potentiometer feedback values, Potentiometer Break Settings, Safe
Output Values, Manual Drive control.
OutputHi, OutputLo. Shows the maximum output and minimum (maximum negative)
output power value delivered by Channel 1 and Channel 2. By reducing the high power limit,
OutputHi, it is possible to reduce the rate of change of the process. However, the ability to react
to disturbance is also reduced when reducing the power limit. Typically, OutputLo will be set to
0% for Channel 1 (heat) only, and set to -100% for Channel 1/Channel 2 (heat/cool) algorithm.
Ch1Outpt, Ch2Outpt. Shows the output value of Channel 1 and Channel 2 respectively.
The Channel 1 output shows the positive power values (0 to OP.OutputHi) used by the heat output,
and is typically wired to the control output (time proportioning or DC output). The Channel 2 output is the negative
portion of the control output (0 - OP.OutputLo) for heat/cool applications, and is inverted to a positive number so that it
can be wired into one of the outputs (time proportioning or DC outputs).
Ch2DeadB. Specifies the deadband percentage value. This is a difference between output 1
%
control going off and output 2 control coming on and/or vice versa.
NOTE For on/off control this is taken as a percentage of the hysteresis.
C/F
RateOP. Specifies the maximum rate the output from the PID can change in % change per
minute, if the Output Rate Limit Disable, OP.RateDis, is set Off. It prevents rapid changes in -100%
output from damaging the process or the heater elements.
RateDis. (Off/On). Controls the use of the Output Rate Limit. The Output Rate limit may be disabled by setting its
value to 0.0, however, in some applications it is useful to wire to this field so that it can be switched on/off during stages
of the process.
NOTE It can be used with programmer event outputs to control the output rate of change during a particular
segment.
C1OnOfHs % C2OnOfHs %
100%
C/F C/F
-100%
C1OnOfHs, C2OnOfHs. Specifies the Hysteresis value in the units configured for the PV of Channel 1 and Channel
2 respectively. In a Heat/Cool application it defines the point below Setpoint where the output will turn on. The output
will turn off when the PV is at Setpoint. This is used to prevent the output from chattering at the control Setpoint. If the
HA082375U003
Page 193 Issue 33 August 2019
CONTROL FUNCTION BLOCKS LOOP_PID
hysteresis is set to 0 any change to the PV when at Setpoint will cause the output to switch. The hysteresis should be set
to a value that provides an acceptable life for the output contacts, but does not cause unacceptable oscillations in the PV.
NOTE Use PID control if this perfomance is unacceptable.
C1TravT, C2TravT. Shows the valve travel time in seconds for
AI_UIO LOOP_PID
the Channel 1 and Channel 2 outputs to travel from 0% (closed) to AI_UIO LOOP_PID
HA082375U003
Issue 33 August 2019 Page 194
LOOP_PID CONTROL FUNCTION BLOCKS
ForcedOP. Specifies the forced manual mode output power. This is the defined output value used when
Main.AutoMan is set Man and OP.ManMode is set Step.
ManStart. (Off/On). Controls the mode at startup. If OP.ManStart set On, Main.AutoMan is set to Man at startup.
Otherwise, Main.AutoMan remain unchanged.
PwrffEnb. For future use - (Yes/No). Enables the output power to be corrected for fluctuations in the line voltage
when using electrical heating (FeedForward). Yes, indicates the line voltage is monitored and will compensate for
fluctuations before they affect the process temperature.
Example If the line voltage falls by 20% while a process is running at 25% power, and the temperature
operating at the Setpoint, the heater power would drop by 36% because of the square law dependence of power
on voltage. The temperature would eventually fall, causing the thermocouple and control to increase the On-
Time in an attempt to bring the temperature back to Setpoint. Meanwhile the material would be running cooler
than optimum which may cause some imperfection in the product.
NOTE This is only applicable to electric heaters and MUST be set to No if using any other heating medium
such as gas, steam or heat transfer oil.
PwrffIn. For future use - Input to provide the measured mains voltage to the Power FeedForward calculation when
OP.PwrffEn is set Yes.
CoolType. (Linear/Oil/Water/Fan). Specifies the type of cooling used. Linear indicates the cooling demand is
derived directly from the PID demand, Oil, Water and Fan are derived non-linearly from the PID demand.
NOTE Oil is pulsed in a linear manner, but is a more direct cooling method and needs a lower cool gain than
fan cooling. Water cooling does not operate well in areas running well above 100°C. When using water
cooling this delivers shortened pulses of water for the first few percent of the cooling range, when the water is
likely to be flashing off into steam. This compensates for the transition out of the initial strong evaporative
cooling. Fan cooling is gentler than water cooling and not so immediate or decisive because of the long heat
transfer path through the finned aluminum cooler and barrel. A cool gain setting of 3 upwards would be
typical and delivery of pulses to the blower would be linear, i.e. the on time would increase proportionally with
percentage cool demand determined by the control.
FFType. (None/Remote/SP/PV). Specifies the source of the OP.FFOP value, and is scaled and added to the control
output. None indicates this function is disabled, Remote indicates the OP.FFOP value is derived from a remote source.
SP indicates the OP.FFOP value is derived from Main.WSP, and scaled by OP.FFGain and OP.FFOffset, restricting the
range of effect. PV indicates the OP.FFOP value is derived from Main.PV, and is scaled onto the output range by
OP.FFGain and OP.FFOffset.
FFGain. Defines the value multiplied by OP.FFOP.
FFOffset. Defines the offset value applied to OP.FFOP.
FFTrimLm. Defines the symmetrical limit to Main.WrkOP, trimming OP.FFOP if the limit is exceeded.
FFRem. Defines an alternative value from the strategy to be used as the primaray control variable in the FeedForward
strategy. OP.FFGain and OP.FFOffset are not applied to this value.
FFOP. Shows the calculated FeedForward value.
TrackOP. Shows the value for the loop output to track when OP.TrackEn is enabled.
TrackEn. (Off/On). Controls the use of the loop output tracking. When enabled (On), the output of the loop will
follow the track output value. The loop will bumplessly return to control when OP.TrackEn is set Off.
RemOPL, RemOPH. Specifies the minimum and maximum limit of the loop output from a remote source or
calculation.
Diag Page
This page provides diagnostic parameters that can aid control loop commissioning.
Error. Shows the calculated error between Main.WSP and Main.PV.
TargetOP. Shows the requested control output. This is the target of the active output if an output rate limit,
OP.RateOP, is configured.
HA082375U003
Page 195 Issue 33 August 2019
CONTROL FUNCTION BLOCKS LOOP_PID
WrkOPHi, WrkOPLo. Shows the resolved high and low output power limits. It is used to limit the output power
of the loop and is derived from Diag.SchdOPHi and Diag.SchdOPLo, the OP.RemOPH and OP.RemOPL and the
OP.OutputHi and OP.OutputLo.
LpBreak. (No/Yes). Shows a Loop Break has occurred. This is detected if the PV does not respond to a change in
the output before the time specified in PID.LBT1 or the currently operating PID set, PID.Set2 to PID.Set8. This sets
Alarms.LpBreak TRUE.
PropOP. Shows the contribution of the Proportional Band to the control output.
InOP. Shows the contribution of the Integral time term to the control output.
DerivOP. Shows the contribution of the Derivative time term to the control output.
SensorB. (No/Yes). Shows a Sensor Break has occurred. This is detected if the PV is bad, and triggers
OP.SbrkMode and OP.SbrkOP, if applicable.
Alarms. See Main.Alarms and Appendix D page 545 for a general description of the Alarms field.
SchedPB. Shows the Scheduled Proportional Band value as set by the active PID list and determined by Gain
Scheduling, as shown in PID.PB1 or currently active PID set.
SchedTi. (Off/On). Controls the use of the Integral time term value as set by the active PID list and determined by
Gain Scheduling, as shown in PID.Ti1 or currently active PID set.
SchedTd. (Off/On). Controls the use of the Derivative time term value as set by the active PID list and determined
by Gain Scheduling, as shown in PID.Td1 or currently active PID set.
SchedR2G. Shows the current Relative Cool Gain value as set by the active PID list and determined by Gain
Scheduling, as shown in PID.R2G1 or currently active PID set.
SchedCBH, SchedCBL. Shows the current CutBack High and CutBack Low value as set by the active PID list and
determined by Gain Scheduling, as shown in PID.CBH1 and PID.CBH1 or currently active PID set. Auto indicates a
default value of 3Pb will be used.
SchedMR. Shows the current Scheduled Manual Reset value as set by the active PID list and determined by Gain
Scheduling, as shown in PID.MR1 or currently active PID set.
SchdLPBk. Shows the current Scheduled Loop Break Time value as set by the active PID list and determined by Gain
Scheduling, as shown in PID.LBT1 or currently active PID set.
SchdOPHi, SchdOPLo. Shows the current Output High and Output Low values as set by the active PID list and
determined by Gain Scheduling, as shown in PID.OPHi1 and PID.OPLo1 or currently active PID set.
Alarms Page
This page provides alarm parameters that can aid control loop commissioning.
HiHi, LoLo. Shows the High High and Low Low Absolute Alarm limit. HiHi and LoLo parameters define when the
corresponding Alarms are set TRUE, e.g. Main.Alarms.HiHi shows TRUE, if PV exceeds an Alarms.HiHi set at 90. Both
parameters operate with a user-configured hysteresis band (Alarms.Hyst).
Hi, Lo. Shows the High and Low Absolute Alarm limit. Hi and Lo parameters define when the corresponding Alarms
are set TRUE, e.g. Main.Alarms.Hi shows TRUE, if PV exceeds an Alarms.Hi set at 90. Both parameters operate with a
user-configured hysteresis band (Alarms.Hyst).
DevHi, DevLo. Shows the High and Low Deviation (Error) Alarm limits respectively. DevHi, and DevLo define
when the corresponding alarms are set TRUE, if PV deviates from SP by more than the specified amount, and operates
with a user-set hysteresis band (Alarms.Hyst) on each limit.
Hyst. Hysteresis bandwidth value, applied to all alarm levels in engineering units. It provides a clean transition in and
out of Alarm conditions.
HA082375U003
Issue 33 August 2019 Page 196
LOOP_PID CONTROL FUNCTION BLOCKS
Alarms. See Main.Alarms and Appendix D page 545 for a description of the Alarms field.
TIME
PV
Hyst
Lo, DevLo, or LoLo
HA082375U003
Page 197 Issue 33 August 2019
CONTROL FUNCTION BLOCKS TUNE_SET
Block function
Please refer to the schematic in Figure 44. Each Tune_Set block provides another set of PID tuning parameters, that are
referenced by the PID.Set2 to PID.Set8 fields in the LOOP_PID block.
NOTE An initial default set of tuning parameters is provided within the LOOP_PID block.
This block is used to obtain maximum performance from the PID control by matching,or tuning,the instrument strategy
to the process under control. Maximum performance is derived from good control, that means,
Stable ‘straight-line’ control of the process at Setpoint without fluctuation.
Acceptable overshoot or undershoot of the process Setpoint.
Quick response to deviations from the Setpoint caused by external disturbances, thereby restoring the process
rapidly to the Setpoint value.
NOTE If using ‘Proportional only’, ‘PD’, or ‘PI’ control, the ‘TI’ or ‘TD’ parameters MUST be set OFF
before commencing the tuning cycle. The tuning process ignores these parameters and will not calculate a
value for them.
The standard method of tuning a PID loop is to use the advanced tuning algorithms inbuilt in the LOOP_PID block, to
automatically test the loop and implement the optimum PID control parameters.
NOTE Care should be taken to ensure that the oscillations of the Process Value will not damage the process
being tuned. For tuning purposes, it is recommended that the Setpoint is configured to a value below the
normal running Setpoint value.
The ‘one-shot’ tuner works by switching the output on and off to induce an oscillation in the measured value. The
optimum PID control tuning parameter values are calculated from the amplitude and period of the oscillation. It can be
performed at any time, but normally it is performed only once during the initial commissioning of the process. However,
if the process under control subsequently becomes unstable, because its characteristics have changed, it can be re-tuned
for the change of characteristics.
Some processes will not tolerate full heating or cooling being applied during tuning, so the level of heating or cooling can
be restricted by setting the heating and cooling power limits. However, the measured value must oscillate to some degree
for the tuner to be able to calculate values.
NOTE It is best to start tuning with the process at ambient temperature. This allows the tuner to accurately
calculate the CutBack Low, CBL, and CutBack High, CBH, values which restrict the amount of overshoot, or
undershoot.
HA082375U003
Issue 33 August 2019 Page 198
TUNE_SET CONTROL FUNCTION BLOCKS
Block parameters
Symbols used in the following table are explained in Table 1. Additional parameter information is given in the Block
specification menu section following.
Tune_Set 2/3
Boundary
Tune_Set 1/2
Boundary
Plant Operating
Position
PID Set1 PID Set2 PID Set3
HA082375U003
Page 199 Issue 33 August 2019
CONTROL FUNCTION BLOCKS TUNE_SET
PB. Specifies the Proportional Band value relating to this PID Tuning set. This is the range of PVs over which linear
gain action occurs before the output saturates at maximum or minimum, and should be set as low as possible without
causing oscillation.
Proportional Band PB value before
Output Narrow Temperature oscillation occurs
Wide
100%
Setpoint
50%
PB value
decreasing
0% Temperature Time
Setpoint
Ti. Specifies the Integral Time value relating to this PID Tuning set. Temperature Proportional
It is used to remove steady state control offsets by ramping the output Control Only
up or down in proportion to the amplitude and duration of the error
signal. Off indicates that the Integral Time is disabled. Setpoint
Proportional
NOTE During Proportional only control, an error & Integral
Control
between Setpoint and PV must exist in order to deliver
power. This can lead to the PV oscillating about the Setpoint
Time
or the PV settling at a point away from the Setpoint. By
enabling Integral action, the control will monitor the error and add further power demand to remove the steady
state errors.
Td. Specifies the Derivative Time value relating to this PID Tuning set. It is used to achieve better stability, prevent
Overshoot and Undershoot and restore the PV rapidly if a change in demand occurs. Off indicates that the Derivative
Time is disabled.
Temperature Temperature
Setpoint Setpoint
Proportional & Proportional &
Integral response Integral response
Time Time
Response without configured Response with configured
Derivative action Derivative action
A derivative action, Setup.DerivTyp, configured on PV allows changes in the Setpoint without causing the output to
bump. The derivative monitors the loops rate of change, and reacts to steps in the PV by changing the output to remove
the transient. Increasing the Derivative Time will reduce the settling time of the loop after a transient change.
NOTE If the loop control is unstable and causing excessive output changes because the derivative is
amplifying noise from the PV, it is recommended that the Derivative Time is disabled, PID.Td1 set Off, and
the loop is re-tuned.
R2G. Shows the Relative Channel 2 Gain control output relating to this PID Tuning set. This value is in relation to
the channel 1 control output. It compensates for the different quantities of energy needed to heat, as opposed to that
needed to cool, a process.
NOTE For example, water cooling applications may require a relative cool gain of 4. This means that
cooling is 4 times faster than the heat process.
CBH, CBL. Specifies the number of display units above or below the Setpoint that will increase or decrease the output
power. This is used to reduce overshoot and undershoot for large step changes in the process relating to this PID Tuning
set. Auto indicates a default value of 3Pb will be used.
HA082375U003
Issue 33 August 2019 Page 200
TUNE_SET CONTROL FUNCTION BLOCKS
MR. Specifies the power required to eliminate the steady state error from proportional only control. It is used to remove
PV offsets from the Setpoint, and introduces a fixed power level to the output. This replaces the integral component when
Integral Time (Ti1) is set to Off.
LBT. Specifies the maximum Loop Break Time, relating to this PID Tuning set. A Loop Break is detected if the PV
does not respond to a change in the output before this time is exceeded. If this value is exceeded the Loop Break alarm,
Diag.LPBreak, is set Yes and the output power will drive to high or low limit. Off indicates that the Loop Break Time
is disabled.
The Loop Break detection in PID control, sets Diag.LPBreak Yes if the PV has not moved by 0.5 x Pb in the Loop Break
Time. The Loop Break Time is set by the Auto Tune, a typical value is 12 x Td.
During On/Off control Loop Break is based on Loop Break Time as 0.1 x SPAN where SPAN = SP.RangeHi –
SP.RangeLo. Therefore, if the output is at limit and PV has not moved by 0.1 x SPAN in the Loop Break Time a loop
break is indicated.
NOTE This must not be confused with load failure and partial load failure.
OPHi, OPLo. Specifies the maximum and minimum Gain Scheduled Output limits relating to this PID Tuning set.
These are ignored if the main output limit or the remote limit exceed these limits.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. Asserted, if any alarm is active in the block. Adopts the same status message and priority number
as the block’s highest priority active alarm.
LOOP_PID. Shows the block name of the LOOP_PID block related to this set of tuning parameters.
SetNo. Shows the Set number field, Setn, of the associated LOOP_PID block this Tune_Set block is configured to.
HA082375U003
Page 201 Issue 33 August 2019
CONVERT FUNCTION BLOCKS
HA082375U003
Issue 33 August 2019 Page 202
ENUMENUM CONVERT FUNCTION BLOCKS
Block function
The ENUMENUM block converts an enumerated value from one enumeration to another. The block requires both source
and destination to be wired.
An enumerated field consists of a text string associated with a number. Enumerated fields in different LIN block types
having the same text strings may well have different sets of associated numbers. The ENUMENUM block works by
reading in the text string associated with the numerical value of the source block enumeration (connected to fields
SrcEnum1 to 8), searching the text strings in the destination block enumeration (connected to fields DstEnum1 to 8) for
an exact match, then outputting to the destination block the associated numerical value found in that block. Alarms
(Wire1 to 8) are raised if a connection is un-wired or no match can be found.
NOTE. This block is not intended for fanning out to different enumerations and may not work in the way
expected under such circumstances. Each wire-out should be fanned out only to instances of a single block
type.
Block parameters
Symbols used in Table 63 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 203 Issue 33 August 2019
CONVERT FUNCTION BLOCKS UINTENUM
Block function
The UINTENUM block converts an integer into an enumeration. The block requires the destination enumeration to be
wired.
An enumerated field consists of a text string associated with a number. The UINTENUM block works by reading in the
source integer (input via fields SrcUint1 to 8), and writing this number to the destination block enumeration (via output
fields DstEnum1 to 8), thus selecting the associated text string (if any) in the destination block. Alarms (Wire1 to 8) are
raised if a destination connection is not wired, or if the source integer does not match any of the permitted enumeration
values in the destination block.
Block parameters
Symbols used in Table 64 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 204
ENUMUINT CONVERT FUNCTION BLOCKS
Block function
The ENUMUINT block converts an enumeration into an integer. The block requires the source enumeration to be wired.
An enumerated field consists of a text string associated with a number. The ENUMUINT block works by reading in the
numerical value of the source block enumeration (input via fields SrcEnum1 to 8), and writing this number to the
destination integer (via output fields DstUint1 to 8).
Block parameters
Symbols used in Table 65 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 205 Issue 33 August 2019
CONVERT FUNCTION BLOCKS REALTIME
Block parameters
Symbols used in Table 66 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 206
REALTIME CONVERT FUNCTION BLOCKS
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
HA082375U003
Page 207 Issue 33 August 2019
DCM FUNCTION BLOCKS
HA082375U003
Issue 33 August 2019 Page 208
DIAGNOSTIC FUNCTION BLOCKS
HA082375U003
Page 209 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS AGA8DIAG
Block function
The AGA8DIAG block provides a set of diagnostics on the detailed workings of a named AGA8DATA (AGA8
calculation) block running in the control strategy. The fields in this block are detailed in the set of equations published
in the American Gas Association Report #8.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 210
AGA8DIAG DIAGNOSTIC FUNCTION BLOCKS
HA082375U003
Page 211 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS ALH_DIAG
Block function
The ALH_DIAG block gives statistics on the alarm history facility of the T2550/Eycon™ 10/20 Visual Supervisor/T800/
T2900/T940 instrument in which the block is running.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 212
ALINDIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The ALINDIAG block gives information on the low-level ALIN Media Access Control (MAC) and Logical Link Control
(LLC) performance.
Block parameters
Symbols used in this table are explained in Table 1.
HA082375U003
Page 213 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS AMC_DIAG
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 214
BCS_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The BCS_DIAG block displays statistics on the routing broadcast process within a bridge.
Block parameters
Symbols used in this table are explained in Table 1.
HA082375U003
Page 215 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS CON_DIAG
Block function
The CON_DIAG block displays statistics on connections through a bridge.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 72 following.
HA082375U003
Issue 33 August 2019 Page 216
CON_ENT DIAGNOSTIC FUNCTION BLOCKS
Block function
The CON_ENT block displays information on a particular connection through a bridge.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 73 following.
HA082375U003
Page 217 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS CON_TBL
Block function
The CON_TBL block displays a summary of the file or database connections operating through a bridge.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 74 following.
HA082375U003
Issue 33 August 2019 Page 218
DB_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The DB_DIAG block indicates the actual resource levels used by the current database (in the left half of the specification
menu), and also the maximum resource levels allowed by the current software version (in the right half).
NOTE The displayed parameter values are valid only at runtime in the target instrument.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 219 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS DDR_DIAG
Block function
The DDR_DIAG block gives statistics on the data recording facility of the Eycon™ 10/20 Visual Supervisor and T2900
(Industrial Strategy Engine) in which the block is running.
Much of the DDR system is owned or controlled by the Group blocks in the ORGANISE template palette. Therefore
there are two levels of DDR information - system-wide, and group-specific. To handle an arbitrary number of groups
without becoming unwieldy, the DDR_DIAG block displays data for a single group, selected using the input fields
ShowArea and ShowGrp.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 76 following.
*Units of 64Kb
Table 76 Block parameters
HA082375U003
Issue 33 August 2019 Page 220
EDB_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The EDB_DIAG block displays information on connections to external databases running in remote instruments. One
remote database is monitored at a time, selected via the EDBindex field. Remote database entries can be examined to
check that the name and address are as expected and that communication is occurring. The block also monitors the cached
block update rate tuning algorithm.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 221 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS EDB_DIAG
ErrRate. Provides information on the state of the block update rate tuning algorithm. ErrRate provides a measure of
the transmission error rate to the remote node, i.e. the number of errors that occurred in the last TxCount transmission.
TxCount. Provides information on the state of the block update rate tuning algorithm. This shows a count of
transmitted messages that have occurred after TxBias was edited.
TxBias. Provides information on the state of the block update rate tuning algorithm. Defines the maximum time
permitted before an error is counted, increasing ErrRate. This value is derived from ErrRate, TxCount; tuned to give 0.5%
- 1.0% target error rate.
HA082375U003
Issue 33 August 2019 Page 222
EDB_TBL DIAGNOSTIC FUNCTION BLOCKS
Block function
The EDB_TBL block summarises all external databases currently in use.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 78 following.
HA082375U003
Page 223 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS EIO_DIAG
Block function
The EIO_DIAG block provides a display for both the expected and actual I/O modules at each site, and the health of each
of the sites. It can display a maximum of 16 I/O sites on one screen.
When operating on a coupled duplex system, the display of actually fitted I/O modules is derived by either the primary
or secondary processor, as selected via the AcSource parameter, when operating on a simplex system, or a non-coupled
duplex system, the display of actually fitted I/O modules is derived by the primary processor.
NOTE ‘Non-coupled’ is not the same as ‘not syncd’, if the Duplex LED is steady, the processors are coupled,
but may or may not be sync’d. If the Duplex LED is flashing or off, the processors are not coupled.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 224
EIO_DIAG DIAGNOSTIC FUNCTION BLOCKS
PrFault. Bit-fields indicating the status of the communications between the primary processor and the selected I/O
site, as indicated by the Page parameter.
Site_1 to Site16. Health status shown in PrFault of each sites is derived as per the table below.
Expected I/O Actual I/O Options.FaultAs Options.FaultsAs
Module Module set to ‘Mismatch’ set to ‘Redundcy’
None None HEALTHY UNHLTHY
None <any> UNHLTHY UNHLTHY
<specific> <correct> HEALTHY HEALTHY
<specific> <wrong> UNHLTHY HEALTHY
<specific> None UNHLTHY UNHLTHY
Alarms. See Appendix D page 545 for a general description of the Alarms parameter.
Software. Sumcheck error in block’s RAM data.
PrMajFlt. TRUE if the primary processor detects a major hardware fault. This is usually a hardware fault that
affects the system.
SeMajFlt. TRUE if the secondary processor detects a major hardware fault. This is usually a hardware fault that
affects the system.
PrMinFlt. If Options.FaultAs is set to ‘Mismatch’ then TRUE if any I/O module in PrFault parameter is set
‘UNHLTHY’ (unhealthy) according to the primary processor.
If Options.FaultAs is set to ‘Redundcy’ then TRUE if any I/O module in PrFault parameter is set ‘UNHLTHY’
(unhealthy) and if corresponding expected I/O module is anything other than ‘None’.
SeMinFlt. If Options.FaultAs is set to ‘Mismatch’ then TRUE if any I/O module in SeFault parameter is set
‘UNHLTHY’ (unhealthy) according to the secondary processor.
If Options.FaultAs is set to ‘Redundcy’ then TRUE if any I/O module in SeFault parameter is set ‘UNHLTHY’
(unhealthy) and if corresponding expected I/O module is anything other than ‘None’.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
AcSource. Simplex/Primary/Secondary. Select to indicate the source of Actual_1 to Actual16 data. Secondary can
only be selected for a coupled system
Actual_1 to Actual16. None/AI2/AI3/AI4/ZI/AO2/DI16/DI4/DI8_LG/DI8_LGv2/DI8_CO/DI8_COv2/
DI6_MV/DI6_HV/DO4_LG/DO4_LGv2/DO4_24/DO4_24v2/DO8/DO16/RLY4/RLY4v2/RLY8/FI2/AI8_TC/
AI8_MA/AI8_RT/AI8_FMA. Displays the I/O module actually fitted on a specific site. For example, Actual_1 is the
actual physical module type fitted at site 1. The value is derived by the processor indicated by the AcSource parameter.
SeFault. Bit-fields indicating the status of the communications between the secondary processor and the selected I/O
site, as indicated by the Page parameter.
Site_1 to Site16. When AcSource is set to ‘Secondary’, health status of each site is derived as per the table
below. Any other value of AcSource would show ‘HEALTHY’.
Expected I/O Actual I/O Options.FaultAs Options.FaultsAs
Module Module set to ‘Mismatch’ set to ‘Redundcy’
None None HEALTHY UNHLTHY
None <any> UNHLTHY HEALTHY
<specific> <correct> HEALTHY HEALTHY
<specific> <wrong> UNHLTHY HEALTHY
<specific> None UNHLTHY UNHLTHY
Table 81 SeFault status based on expected vs actual fitted modules (with AcSource set to ‘Secondary’)
HA082375U003
Page 225 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS EIO_DIAG
Options.
FaultsAs. Determines the method used to derive health status and impact how the PrFault and SeFault
parameters behave.
o Mismatch: This mode should usually be selected. Here, the fault bit-fields (PrFault and SeFault) reflect
whether the expected and actual site contents match. If they do, then the appropriate bit-fields are set to
HEALTHY; if they don’t match, the bit-fields are set to UNHEALTHY.
o Redundcy: This is the legacy mode for this block. In this mode, the PrFault bit-field is PRIMARY:HEALTHY
(FALSE) if an I/O module is expected in the site and a module can be communicated with, or UNHEALTHY
(TRUE) otherwise. This means that in this mode, a site is considered unhealthy if no I/O module is expected.
The SeFault bit-field will be set to SECONDAY:HEALTHY if an I/O module can be communicated with.
Notes: 1. By default, legacy configurations act in ‘Redundcy’ mode. Newly created blocks default to the ‘Mismatch’
mode.
2. For base sizes with fewer than 16 sites, the unavailable I/O slots are reported as Unknown in the ‘Actual’
parameters. These unavailable slots are always reported as HEALTHY.
HA082375U003
Issue 33 August 2019 Page 226
ELINDIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The ELINDIAG block collects low-level statistics on the operation of the Ethernet Local Instrument Network (ELIN).
The information concerns the Media Access Control (MAC) layer and the Logical Link Control (LLC) layer. The block
can be cached in other instruments.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 227 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS ELINDIAG
MACstate. (OFFLINE/IDLE/DEMAND_IN/DEMAND_DL/CLAIM_TOK/AWAIT_IFM/CHK_TOK_P/
AWAIT_RES). Current operating mode of the media access control (MAC) state machine. This should always read
OnLine. Any other value indicatesa serious internal error.
Procesor. This should always read Primary. ELIN is redundant processor aware, but it is not possible to view blocks
running on a secondary processor.
ThisIP. IP address of this instrument.
LastErr. Four hexadecimal digits showing the code of the last database error. This should always read 0 (zero). Refer
to the specific instrument manual for a list of error codes and their meanings (for non-obvious cases).
RemEntry. This field shows the index number into a table of remote LIN Node Number mappings. As entries are
added and removed from the table, so individual entries can change their index. Setting this field to “-1” allows you to
enter the required remote node number into the RemNode field (ScWeight field does not work in this mode).
NOTE ELIN only maintains mappings of nodes it actually wishes to talk to - if there is no LIN traffic
between nodes, there will be no mapping.
PrimIP. Primary Processor IP address of remote LIN Node.
Remstate. This indicates the quality of the mapping to the selected remote node. The values “unresolved” and
“known” have obvious meanings. The value “assumed” indicates traffic has been received from the specified node using
the specified IP address and Port Number, but that the mapping has not been confirmed by PRP. LIN communications
can successfully take place using an assumed mapping, but this is normally only a transitory state.
txTimOut. This indicates the number of individual transmission attempts for which an immediate response has not
been received within the appropriate time out. This can reveal the loss of response to a single transmission which would
otherwise be hidden by retries.
HA082375U003
Issue 33 August 2019 Page 228
EMAPDIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The EMAPDIAG block collects a complete map of all LIN Nodes on this LIN Network regardless of whether it
specifically communicates with other nodes. The block can be cached in other instruments.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 229 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS ETH_RT_LIM
Block function
This block provides diagnostic information, and automatic Ethernet Rate Limit Protection against high levels of incoming
Ethernet traffic for maintaining the performance of the local closed loop control. High levels of incoming Ethernet traffic
may be experienced during .udp broadcast storms, invalid cable/hub configurations (rings) and rapidly repeated requests
from other hosts when instruments do not offer, or deny, a requested service.
When Ethernet traffic is too high or a UDP broadcast storm is detected, Protection is automatically activated, and
deactivated when an acceptable level is consistently received. While Rate Limit Protection is activated the types of
message it will respond are limited to LIN communications. However, if the incoming traffic becomes too great, the
external LIN communications will also be stopped.
NOTE Synchronised Redundant processors become desynchronised if Ethernet Rate Protection is activated.
The processors will automatically attempt to synchronise when the Ethernet Rate Protection deactivates.
The values indicating excessive traffic, ConA, ConB, ConC, and ConD, are derived from instrument development and
test, and held in the instrument firmware, see Table 85. Actual Ethernet message rates on any particular Ethernet segment
to and from any node on that segment can be established through commercially available test tools and software packages
for Computers connected to that Ethernet segment.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 230
ETH_RT_LIM DIAGNOSTIC FUNCTION BLOCKS
lTimeStr, lDateStr. Shows the Time and Date respectively, when the Ethernet Rate Limit Protection was last
activated, ProtAct set TRUE.
lTimeFin, lDateFin. Shows the Time and Date respectively, when the Ethernet Rate Limit Protection was last
deactivated, ProtAct changes from TRUE to FALSE.
ResetTim. Used to reset the Time and Date displays respectively. When set TRUE, lTimeStr, lDateStr, lTimeFin, and
lDateFin reset to 00:00:00 and 00/00/00 as appropriate
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Asserted, if a sumcheck error in block’s RAM data occurs.
ProcActi. Asserted, if Ethernet Rate Limit Protection is activated, ProtAct set TRUE.
Combined. Asserted, if any alarm is active in the block. Adopts the same status message and priority number
as the block’s highest priority active alarm.
IPAddr. Shows the IP Address of the instrument running the database file, .dbf containing this block.
Subnet. Shows the Subnet Mask value of the instrument running the database file, .dbf containing this block.
ConA. Shows the number of messages received in a single tick indicating normal operation of the instrument, see table
below. This is used to determine when Ethernet Rate Protection mode can be exited.
ConB. Shows the number of consecutive ticks that the Ethernet Rate Limit Protection will remain active for unless
excessive data still exists in the instrument, see table below.
ConC. Shows the number of messages that can be processed without delay while the Ethernet Rate Limit Protection
is activated in the instrument, see table below.
ConD. Shows the number of Ethernet messages that can be received in one tick before the instrument will Watchdog,
see table below.
HA082375U003
Page 231 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS FDDADIAG
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 232
FDDADIAG DIAGNOSTIC FUNCTION BLOCKS
Status. Indicates the status of the FTP Server specified by the ServerNo and Host field.
SingCopy. TRUE, indicates the instrument will copy the selected file to a single FTP Server as defined in the
ServerNo field. FALSE, shows that the instrument will copy the selected file to all FTP servers.
Enabled. TRUE, indicates the FTP Server is enabled. FALSE, shows that the FTP server is disabled, sets the
Disable.Alarms.
Alive. TRUE, indicates the FTP Server is available. FALSE, shows that the FTP server is unavailable, sets the
Comms.Alarms.
Pending. TRUE, indicates there are one or more files pending transfer. FALSE shows that the number of files
currently awaiting transfer is 0 (zero).
HiPend. TRUE, indicates the HiPend threshold has reached the permitted number of pending file transfers, sets
the HiPend.Alarms.
Primary. TRUE, indicates that this is Primary FTP Server.
Complete. TRUE, indicates that the last transfer was successfully completed. 1 is added to the number in the
Done_Cnt count field.
Missed. TRUE, indicates that the file does not exist and therefore the last transfer was missed. 1 is added to the
number in the Miss_Cnt field.
Cancelled. TRUE, indicates that the last transfer was cancelled. 1 is added to the number in the Cncl_Cnt count
field.
Failed. TRUE, indicates that the last transfer failed. 1 is added to the number in the Fail_Cnt count field.
HiPend. The user defined value indicating the maximum number of files that can be pending, prior to transfer. It is
the HiPend.Alarm and HiPend.Status limit for high pending file transfers. HiPend.Alarm is set TRUE if number of files
awaiting transfer is equal or more than this value.
ResetCnt. TRUE, resets all counters to zero, excluding the count of files awaiting transfer.
Req_Cnt. Shows the total number of files that have been requested for transfer.
Done_Cnt. Shows the total number of files that have been transferred.
Miss_Cnt. Shows the total number of files that have been missed.
Cncl_Cnt. Shows the total number of files that have been cancelled.
Fail_Cnt. Shows the total number of files that have failed.
Pend_Cnt. Shows the total number of files that are currently awaiting transfer.
TotalXfer. Shows the total size, in Mbytes, of all files transferred to date.
LastFile. Shows the filename of the last file transferred.
LastExt. Shows the type of file (file extension, .bmp, .uyt, etc.).
LastRes. NONE/IN PROG/OK/FAIL/CANCELED/MISSED. Shows the result of the last attempted file transfer.
LastSize. Shows the size in bytes of the last file transfer attempted.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Comms. TRUE, indicates that the FTP server in communications error.
Disabled. TRUE, indicates that the FTP server is currently disabled.
HiPend. TRUE, indicates that the FTP Primary server has reached High Pending limit as defined in the HiPend
field.
HA082375U003
Page 233 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS FSM_DIAG
Block function
The FSM_DIAG block allows the examination of a single FSM resource. Although FSM resources tend to be active for
only short periods of time, this block continues to examine a resource after termination of the FILE connection it was
servicing, thus allowing post-mortem examination of the connection.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 234
FSM_DIAG DIAGNOSTIC FUNCTION BLOCKS
Init. Setting this TRUE initialises the contents of the other fields.
Open.
Close.
Read.
Write.
Delete. A count of either transmission or receipt of requests dependant
Scan. on whether this node is a client or server respectively.
Freescan.
FileChk.
ScanEx.
ReadTime.
Spare1 - Spare6. For future development.
HA082375U003
Page 235 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS FTQ_DIAG
Block function
Each process within a T2550/T2750/T940(X)/ T102 Unit Controller or T302 Unit Supervisor ‘talks’ to the PRMT
(processor redundancy management task) via a set of queues. The FTQ_DIAG block provides access to the low-level
diagnostic statistics about each queue as maintained by the PRMT.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 236
FWD_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The FWD_DIAG block displays statistics on the forwarding process within a bridge.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 89 following.
HA082375U003
Page 237 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS FWD_LOG
Block function
The FWD_LOG block displays information on the results of attempting to forward packets.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 90 following.
HA082375U003
Issue 33 August 2019 Page 238
ICM_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 239 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS IDENTITY
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 240
IDENTITY DIAGNOSTIC FUNCTION BLOCKS
HA082375U003
Page 241 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS IDENTITY
HA082375U003
Issue 33 August 2019 Page 242
IDENTITY DIAGNOSTIC FUNCTION BLOCKS
Consumer. TRUE, indicates a network audit consumer is configured. This field can change at block update
time.
Iconsume. TRUE, indicates the instrument is operating as a network audit consumer. This field can change at
block update time.
SupComms. All fields are derived at block update time.
S6000M, S6000S. TRUE, indicates S6000 master communications, and S6000 slave communications is
supported, respectively.
GWmodM, GWmodS. TRUE, indicates GW Modbus master communications, and GW Modbus slave
communications is supported, respectively.
DCMmodM. TRUE, indicates DCM Modbus communications is supported.
DCMprofM. TRUE, indicates DCM Profibus communications is supported.
GWProfM, GWProfS. TRUE, indicates GW Profibus master communications, and GW Modbus slave
communications is supported, respectively.
AlarmSup. TRUE indicates Alarm Suppression is supported
ActComms. All fields are derived at block update time.
S6000M, S6000S. TRUE, indicates S6000 master communications, and S6000 slave communications is
active, respectively.
GWmodM, GWmodS. TRUE, indicates GW Modbus master communications, and GW Modbus slave
communications is active, respectively.
DCMmodM. TRUE, indicates DCM Modbus communications is active.
DCMprofM. TRUE, indicates DCM Profibus communications is active.
GWProfM, GWProfS. TRUE, indicates GW Profibus master communications, and GW Profibus slave
communications is active, respectively.
AlarmSup. TRUE indicates Alarm Suppression is active
Feature1. All fields are derived at block update time.
Licence. TRUE, indicates this instrument supports a Licence Control System.
Access. TRUE, indicates this instrument supports an Access Control System.
EthRtPro. TRUE, indicates this instrument supports an Ethernet rate protection. Ethernet rate protection is used
to determime when the processor is not processing all Ethernet traffic presented, but is allowing LIN
communications.
EncrptFS. TRUE, indicates this instrument’s GFS fiiling system supports AES encrypted files.
Clusters. TRUE, indicates this instrument supports clustering.
Auditor. TRUE, indicates this instrument supports an Auditor system.
TOD. TRUE, indicates this instrument supports LIN TOD, Time Of Day, synchronisation.
TimeZone. TRUE, indicates this instrument is Time Zone Aware.
OLReconf. TRUE, indicates on-line reconfiguration is supported.
SNTP. TRUE, indicates simple network time protocol is supported. This allows the time to be synchronised with
other instruments or computers that support SNTP.
Feature2. All fields are derived at block update time.
Recipe. TRUE, indicates Recipes are supported.
Reports. TRUE, indicates Reports are supported.
Batch. TRUE, indicates Batch processes are supported.
SFC. TRUE, indicates Sequences are supported.
HA082375U003
Page 243 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS IDENTITY
HA082375U003
Issue 33 August 2019 Page 244
ISB_DEXT DIAGNOSTIC FUNCTION BLOCKS
Block function
The ISB_DEXT block is an extension to diagnostics provided by the ISB_DIAG block. It breaks down ISB errors into
error type, rather than errors per node as provided by the ISB_DIAG block.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 94 following.
HA082375U003
Page 245 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS ISB_DIAG
Block function
The ISB_DIAG block is to help analyse the performance of the ISB (Internal Serial Bus).
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 95 following.
HA082375U003
Issue 33 August 2019 Page 246
LIN_DEXT DIAGNOSTIC FUNCTION BLOCKS
Block function
The LIN_DEXT block collects high (application) level statistics on the operation of the Local Instrument Network (LIN)
- complementing the low-level activity of the LIN_DIAG block.
The block specification menu is divided into two main sections: well-known message counters in the left column, and
database message counters in the right (plus some general parameters). The upper part of each column counts incoming
messages, and the lower counts outgoing messages. Counters can be reset or suspended via the Mode field.
The LIN uses two message types:
unconfirmed messages, which elicit an immediate response from the receiving node but no further
acknowledgement. (Unconfirmed messages are marked with a dagger (†) in Table 96 below.)
confirmed messages, which are acknowledged immediately by the receiving node. Further processing then takes
place before a confirmation with additional information is sent.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 96 following.
HA082375U003
Page 247 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS LINMAPD
Block function
The LINMAPD block will allow you to monitor the view of the ELIN network only, as seen by the Primary and
Secondary processors, while operating in Duplex mode - the block will not function when operating in Simplex mode.
PriFlags (Primary processor) and SecFlags (Secondary processor) subfields are then used to indicate which processor has
a better comprehension of the network, e.g. which processor can communicate with more nodes or can successfully cache
more blocks.
NOTE This block can only be used to monitor ELIN networks and not ALIN. It will not report for nodes on
the ALIN side of an ELIN/ALIN bridge.
Using the LINMAPD block
By including the information gathered by this block in the LIN database, a changeover can be forced between Primary
and Secondary processors, if the Secondary has a better comprehension of the network. Normally a changeover would
only occur automatically due to failure occurring with or within the Primary processor, or if the Primary were to totally
lose Ethernet communications.
To force a changeover to occur from within the LIN database, the Redundancy Control (RED_CTRL) Diagnostic block
must be included in the LIN database. By wiring into the Change, Sync and Desync fields of this block the LIN database
can cause a changeover to occur, and the processors to Sync/Desync as required.
It is also practical to wire the PriFlags (Primary processor) and SecFlags (Secondary processor) subfields from this block
into appropriate alarm fields (i.e. using the DIGALARM block) to assert alarms when the Primary and Secondary
processor network views differ.
NOTE In cases of potential network failure the control action of the LIN database can be halted or frozen, by
using the PriFlags (Primary processor) and SecFlags (Secondary processor) subfields to force blocks (e.g.
PID) into Hold etc.
This block may be used on networks where the Spanning Tree (STP) and/or Rapid Spanning Tree Protocols (RSTP) are
being used. Failures in parts of the network protected by RSTP should not affect LINMAPD as it will quickly recover the
network before the instrument has realized it can no longer see some nodes. However where failures occur on network
segments protected only by STP, the LINMAPD block can indicate different network views for the Primary and
Secondary processors. This is due to the time taken for STP to recover the network. The effect on LINMAPD will be
determined by where the failure actually occurs within the network and if this affects nodes that the LINMAPD is
monitoring, and the value of the STP parameter Forward Delay that ultimately determines the recovery time.
The LINMAPD block should quickly indicate the loss of nodes from the network if the instrument is actively
communicating with those nodes via cached blocks in and/or out. Nodes that the instrument is not directly communicating
with may take up to 1 minute to be removed from display by LINMAPD, once they can no longer see some nodes.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 248
LINMAPD DIAGNOSTIC FUNCTION BLOCKS
HA082375U003
Page 249 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS LINMAPD
MorBkIn. This is set TRUE, if the selected processor can communicate with more blocks cached in the
processor than the other processor.
MorBkOut. This is set TRUE, if the selected processor can communicate with more blocks cached out of the
processor than the other processor.
MorBkTot. This is set TRUE, if the selected processor can communicate with more blocks cached in and out of
the processor than the other processor.
Timer. This is the debounce in seconds applied before asserting the PriFlags and SecFlags. It can be adjusted so these
flags do not change immediately if the Primary and Secondary views differ. This could be used to prevent changeovers
occurring whilst the network is actually recovering from a failure or to avoid constantly initiating a changeover where
momentary network failures occur.
HA082375U003
Issue 33 August 2019 Page 250
LLC_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The LLC_DIAG block is used to indicate the performance of the Logical Link Control (LLC) at a specified port.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 251 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS LLC_DIAG
SAPsbusy. Quantity of Service Access Points (SAPs) in use. Equal to 1 for SAP zero + 1 for the well-known SAP
+ 1 for each remote database.
Tx_free. Quantity of spare transmit buffers. Equal to 1 for the well-known SAP + 1 for each remote database.
Tx_alloc. Quantity of transmit buffers allocated. Equal to 1 for the well-known SAP + 1 for each remote database.
Tx_busy. Quantity of transmit buffers in use. Equal to 1 for the well-known SAP + 1 for each remote database.
Tx_ready. Quantity of transmit buffers ready for use. Equal to 1 for the well-known SAP + 1 for each remote
database.
Rx_free. Quantity of available receive buffers. Equal to 1 for the well-known SAP + 1 for each remote database.
Rx_alloc. Quantity of receive buffers allocated. Equal to 1 for the well-known SAP + 1 for each remote database.
Rx_busy. Quantity of receive buffers in use. Equal to 1 for the well-known SAP + 1 for each remote database.
Rx_bufav. Quantity of invalid request buffers received.
Rx_ready. Quantity of receive buffers ready for use. Equal to 1 for the well-known SAP + 1 for each remote
database.
HA082375U003
Issue 33 August 2019 Page 252
NATCDIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The NATCDIAG block allows the display of Audit consumer configuration and diagnostics. The block can be cached
in other instruments.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 253 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS NATPDIAG
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 254
NET_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The NET_DIAG block summarises the operating mode of a multi-segment network.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 101 following.
HA082375U003
Page 255 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS NETHOST
Block function
The netHOST block summarises the properties, operating mode and diagnostics of connected Profibus Master netHOST
devices. It provides access to the physical netHOSTs connected to the instrument to provide Profibus Master
functionality. The block provides information on both the ‘left’ and ‘right’ netHOSTs, including their IP address, ADR
decade switch settings and firmware information in addition to status and alarm information.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 102 following.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 256
NETHOST DIAGNOSTIC FUNCTION BLOCKS
Dbase, Block, Type. See Appendix D page 544 for details of these ‘header’ fields.
MyIP. The IP address of the instrument to which the netHOSTs are connected (the T2750, for example).
Alarms. text goes here
L_Mode, R_Mode. The mode of the left and right netHOSTs: primary or seconday, which reflects the mode of
the left processor on the instrument.
L_IP, R_IP. The configured IP address of hte left and right netHOSTs respectively, which makes up the
netHOST’s identity when combined with the value of the ADR decade switches (L_ADR and R_ADR parameters).
L_ADR, R_ADR. The expected value of the physical decade switches on the left and right netHOSTs
respectively. WHen combined with the configured IP address of netHOST (L_ADR or R_ADR parameter), this
makes up the netHOSTs’ identity.
L_Serial, R_Serial. The serial number of the left and right netHOSTs respectively, connected to the instrument.
L_Device, R_Device. The device version of the left and right netHOSTs respectively, connected to the
instrument.
L_FWMaj, L_FWMin, L_FWBld, L_FWRev. The major (L_FWMaj), minor (L_FWMin), build (L_FWBld)
and revision (L_FWRev) firmware version for the left netHOST.
R_FWMaj, R_FWMin, R_FWBld, R_FWRev. The major (R_FWMaj), minor (R_FWMin), build
(R_FWBld) and revision (R_FWRev) firmware version for the right netHOST.
L_status, R_status. A bitfield containing status and error information for the left (L_status) and right
(R_status) netHOSTs.
DBstop. Database stopped. Set TRUE if the status of the netHOST cannot be derived because the database isn’t
running. This is not an indication of a fault in the netHOST, but rather that the database is not running.
SubntBad. Bad subnet. Set TRUE if the instrument and netHOST are configured on different IP subnets.
Missing. Missing netHOST. Set TRUE if the netHOST cannot be found.
IPWrong. IP address wrong. This status bit is currently non-functional.
ADRWrong. ADR wrong. Set TRUE if the netHOST has a correct IP address but an unexpected ADR setting.
DevBad. Bad Device. Set TRUE if the netHOST device is unsupported (wrong hardware version).
FirmBad. Firmware Bad. Set TRUE if the netHOST’s firmware is unsupported (wrong version).
HA082375U003
Page 257 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS NODE_MAP
Block function
The NODE_MAP block only applies to the Original OLIN. XLIN is an extension to the original LIN communications
which added the ability to route via bridges. OLIN has since been superseded by ALIN and more recently ELIN, both of
which have always used the XLIN extensions. Hence the term 'XLIN' has now fallen into disuse.
This block displays whether LIN or XLIN is supported by each node on the OLIN.
Block parameters
Symbols used in this table are explained in Table 1.
Protocols supported
The protocols currently supported by various instruments are as follows:
HA082375U003
Issue 33 August 2019 Page 258
OPT_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The OPT_DIAG block provides information about 10 licensable items at a time in the order of original registration,
including attributes of the system that may impose some limit to the operation, i.e. database license violations. It can
display the limits of memory regions (which are NOT items that can be increased by license) as well as items (e.g. number
of standard blocks) which can be increased by license.
NOTE As memory region usage cannot exceed the limit, memory region licensable items can never invoke a
license violation alarm.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
Type Description
RAM_* This shows the details in Usage and Limit related to the displayed instrument region, i.e.
RAM_DB (non-volatile DB RAM) RAM_DB_VOL (volatile DB RAM), RAM_TEMP (Template
space), RAM_SFC (SFC resource table), RAM_ST (SFC ST space), RAM_GWMODBUS (GW
modbus tables), RAM_ALARMS (alarms). The Usage value displays the amount of RAM (in
kbytes) currently used, and the Limit value shows the total amount of RAM (in kbytes) in this
region.
GW_MASTR_RAW This shows the details in Usage and Limit related to the Modbus Master License item. The Usage
value numerically indicates the current state of a Modbus Master configuration (0 = Modbus
Master not configured, 1 = Modbus Master is configured). The Limit value numerically indicates
the instrument has a valid license allowing it to be configured as a Modbus Master (0 = Modbus
Master configuration is not permitted (not licensed), 1 = Modbus Master configuration is
permitted).
Note. Raw Comms is Licensed as part of Modbus Master
Continued...
HA082375U003
Page 259 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS OPT_DIAG
Type Description
Continued...
RECORDING This shows the details in the corresponding Usage and Limit related to the Recording Licencable
item. The Usage value numerically indicates the current state of a Recording configuration
(0 = Recording not configured, 1 = Recording is configured). The Limit value numerically
indicates the instrument has a valid license allowing it to be configured as for recording (0 =
Recording configuration is not permitted (not licensed), 1 = Recording configuration is
permitted).
*_BLOCKS This shows the details in the corresponding Usage and Limit related to the displayed block
license category, i.e. STD_BLOCKS (Standard), CTRL_BLOCKS (Control) or ADV_BLOCKS
(Advanced). The Usage value displays the number of blocks from the Standard and Control block
license category currently used, and the Limit value shows the permitted number of blocks from
the Standard and Control block license category. Blocks from the Advanced block license
category are licensed and therefore the Usage value numerically indicates the current use of a
Advanced block (0 = Advanced blocks not used, 1 = Advanced blocks are used). The Limit value
numerically indicates the instrument has a valid license allowing it to use any Advanced block (0
= use of Advanced blocks is not be permitted (not licensed), 1 = use of Advanced blocks is
permitted).
Table 106 Violation description
Usagen. The current usage of the type indicated in the Typen field.
Limitn. The limit of the type indicated in the Typen field.
HA082375U003
Issue 33 August 2019 Page 260
PBUSDIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The PBUSDIAG block gives communications diagnostics and statistics for a given Profibus master sub-system
communications line, and diagnostics for a selected node on that line.
The 6 bytes of standard Profibus slave diagnostics are reported in interpreted form, adhering as closely as possible to the
specified Profibus terminology. These 6 bytes are common across Profibus DP and DPv1 slaves, no DPv1 specific
diagnostics are shown. Reporting of slave device specific extended diagnostics is also supported. Additionally other
relevant diagnostics are provided to aid configuration of a Profibus DP network.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 261 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS PBUSDIAG
HA082375U003
Issue 33 August 2019 Page 262
PBUSDIAG DIAGNOSTIC FUNCTION BLOCKS
Caution
This option can impact database efficiency, but judicious use may help debug some fleeting conditions, as long
as they persist for a database update.
SLVLatch. TRUE, “Status Bit” flags latch once. GblError and GblErAdd lock once, GblError not = ‘AllOk’.
FALSE, flags do not latch.
SLVFetch. FALSE, diagnostics are captured directly from the Master card’s internal buffer (if available), in the
slave device via the Profibus network.
Caution
This impairs comms efficiency, but is required for slaves not successfully parameterised by any master. Note it
will not always be possible to obtain diagnostics for a slave successfully parameterised by another master –
Profibus disallows this, at least under some circumstances.
SlvAdd. Slave node number for diagnostics to be obtained from. If set ‘All’ subsequent fields refer to this node.
SlvCfgEr. Internal software error code indicating the reason for failing to configure the slave node.
SlvCycRd & SlvCycWr. Number of bytes of cyclic read, or write data configured on the slave node.
SlvGsd. Name of the GSD file used to configure this node.
ExtDgOff. If a slave node supports extended diagnostics, this field shows the offset into the extended diagnostics data
when the fields ExtDG0_1, ExtDg2_3, ExtDg4_5 and ExtDg6_7 start to list the data.
ExtDgCnt. Number of bytes of extended diagnostics data on this node.
StdStat1. Profibus_DP slave standard station status 1.
NonExist. Set by DP-Master if the respective DP-Slave fails to communicate. The state of the last diagnostic
or initial value is contained if this bit is set. DP-Slave sets this bit to 0.
HA082375U003
Page 263 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS PBUSDIAG
HA082375U003
Issue 33 August 2019 Page 264
PMC_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The PMC_DIAG block provides database access to the diagnostic information for a Profibus line. The Profibus system
makes diagnostics available via a simple direct call that fills in a number of diagnostics structures. This call is made at
update time, and the returned data is copied into the block fields. The block’s Port parameter specifies the Profibus line
for which diagnostics are being collected.
NOTE Currently there are two Profibus lines available (PROFDP_1 and PROFDP_2).
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 265 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS PMC_DIAG
HA082375U003
Issue 33 August 2019 Page 266
PNL_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The PNL_DIAG block gives information about the front-panel fitted to the Eycon™ 10/20 Visual Supervisor and T2900
(Industrial Strategy Engine) in which the block is running.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 267 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS PRPDIAG
Block function
The PRPDIAG block displays the characteristics of the selected Port Resolution Protocol (PRP). One PRP is monitored
at a time, selected via the SIndex field. PRP entries can be examined to check that the name and address are as expected
and that communication is occurring.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 268
PS_TASK DIAGNOSTIC FUNCTION BLOCKS
Block function
The PS_TASK block monitors the approximate CPU usage of each of the tasks only in the T940X (not T940) instrument,
including each one of the four User Task server parameters (UserT1 to UserT4), the cached server task (CacheSrv) and
the cached connections task (CacheCon). Server data is shown as milliseconds per period (server cycle time). The
prioritised nature of the User Tasks should be allowed for when adjusting repeat rates (1 is the highest priority, 4 the
lowest). The reported execution time for a User Task may include a period of suspension whilst higher priority tasks
execute.
NOTE A ‘server’ is a specific process that updates control strategy blocks (e.g. synchronising cached
blocks). One or more servers may be scheduled to run by each ‘task’, and the tasks are themselves scheduled
by the runtime executive (XEC).
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 269 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS PS_TASK
HA082375U003
Issue 33 August 2019 Page 270
PS_TUNE DIAGNOSTIC FUNCTION BLOCKS
Block function
The PS_TUNE block monitors the performance of the three block servers in the T940 (and older versions of the T940X),
Local (S2), Cached blocks’ synchronisation and outgoing connections (S3), Cached blocks’ incoming connections (S4),
and also the proportion of time used by each task in the system. Note that a ‘server’ is a specific process that updates
control strategy blocks (e.g. synchronising cached blocks). One or more servers may be scheduled to run by each ‘task’,
and the tasks are themselves scheduled by the runtime executive (XEC).
Note: The PS_TUNE block should only be used for the T940 or the T940X V4 and earlier. The T940X V5
introduced multiple user tasks and therefore PS_TUNE does not give a complete task view for the T940X V5.
The PS_TASK block should instead be used for the T940X V5 and above.
The left-hand half of the displayed block specification menu shows the server data. A ‘period’ is the server cycle time,
i.e. the time between subsequent executions of the first block on the update list. It is never less than 100ms and can reach
about 1500ms in big strategies. The right-hand side of the specification menu shows the task data; the proportions are
expressed on a scale of 0 to 1000, i.e. x 0.1%. Tasks at the top of the list have the lowest priority and those at the bottom
have the highest.
HA082375U003
Page 271 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS PS_TUNE
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 272
RARCDIAG DIAGNOSTIC FUNCTION BLOCKS
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 273 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS RARCDIAG
HA082375U003
Issue 33 August 2019 Page 274
RARCDIAG DIAGNOSTIC FUNCTION BLOCKS
Write. TRUE if an error occurred while attempting to archive (write) the recorded data to the archive directory
defined in Dir1, Dir2, and/or Dir3. This may occur if the FTP operation failed while writing recorded data to the
configured FTP Servers defined by Host1, Host2, and/or Host3.
DataLost. TRUE if previously recorded data has been deleted from the instrument memory before the .uhh files
could be archived. This may occur if the data is written to the .uhh files quicker than the .uhh files are being
archived to the configured FTP Server, Host1, Host2, and/or Host3. This can be caused by other archiving errors
that are slowing the archive process.
BadPing. TRUE if a network failure occurred when attempting to connect to the IP address of the configured
FTP Servers defined by Host1, Host2, and/or Host3.
ArcStrat (ToAllSrvrs) Defines the current archiving strategy. ToAllSrvrs indicates that recorded data will be
archived to all configured FTP Servers defined by Host1, Host2, and/or Host3.
PrArchv1 to PrAcrhv3, SeArchv1 to SeArchv3. (Disabled/Inactive/Active) Shows the current state of the
primary or secondary module as appropriate while archiving to the configured FTP Servers defined by Host1, Host2, and/
or Host3.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Config. Asserted, when the corresponding Status.Config is TRUE. Indicates data recording configuration failure.
PrHstEr1 to PrHstEr3, SeHstEr1 to SeHstEr3. Asserted, when the corresponding Status.PrHstEr1 to
Status.PrHstEr3, Status.SeHstEr1 to Status.SeHstEr3 is TRUE. Indicates the primary or secondary module detected
an error while archiving to the corresponding FTP Server.
Combined. Asserted, if any alarm is active in the block. Adopts the same status message and priority number
as the block’s highest priority active alarm.
Status. Bitfield indicating comms./hardware error conditions.
Config. TRUE, if the data recording and/or archiving configuration is invalid.
PrHstEr1 to PrHstEr3, SeHstEr1 to SeHstEr3. TRUE, if the primary or secondary module detected an
error while archiving to the corresponding FTP Server. These conditions can be caused if any change in condition
derived from PrError1, SeError1, PrError2, SeError2, PrError3, and SeError3.
Reset. Digital inputs used to reset errors conditions.
PrHstEr1 to PrHstEr3, SeHstEr1 to SeHstEr3. Set TRUE to clear Status.PrHstEr1 to Status.PrHstEr3,
and Status.SeHstEr1 to Status.SeHstEr3 fields, as appropriate. This will automatically clear Alarms.PrHstEr1 to
Alarms.PrHstEr3, and Alarms.SeHstEr1 to Alarms.SeHstEr3.
Dir1 to Dir3. Shows the configured archive destination directory path of the corresponding FTP Server, Host1,
Host2, and Host3 as applicable.
HA082375U003
Page 275 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS RED_CTRL
Block function
The RED_CTRL block provides a means of controlling the redundancy states of a pair of CPUs operating in Duplex
mode. As well as showing various diagnostic parameters, the block can trigger processor synchronisation,
de-synchronisation, and primary/secondary exchange.
The management of synchronisation for two processors in the instrument(s) is handled by a dedicated task, called the
Processor Redundancy Management Task (PRMT). It controls all actions between the two processors and maintains the
statistics accessed by the diagnostic blocks.
NOTE Only one RED_CTRL block must be configured in a LIN Database.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 276
RED_CTRL DIAGNOSTIC FUNCTION BLOCKS
HA082375U003
Page 277 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS RED_CTRL
NOTE Owing to the reconnection mechanism already present in the LIN database protocol (for block
caching), a failure to synchronise the EDB resources between the two processors is not regarded as fatal and
will therefore not prevent overall synchronisation. Hence EDB sync state is not present in this field.
PrMCStat, SeMCStat. (POST/INIT/OPERATNL/FAILED). Machine status. The overall running state of the
instrument.
SYNC. A TRUE input to this field is a request for the duplex pair of processors to synchronise their databases. Note
that setting SYNC clears any entry in the New_DB field, whether the synchronisation command was successful or not.
NOTE For Tactician instruments, use the PriFlags (Primary processor) and SecFlags (Secondary processor)
subfields of the LINMAPD block to initiate this action.
DESYNC. A TRUE input to this field is a request for the duplex pair of processors to synchronise their databases. Note
that setting DESYNC clears any entry in the New_DB field, whether the synchronisation command was successful or not.
NOTE For Tactician instruments, use the PriFlags (Primary processor) and SecFlags (Secondary processor)
subfields of the LINMAPD block to initiate this action.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
PrIntlck, SeIntlck. Corresponding processor has one of the following interlock bits set: A_FrcdPr, A_MajFlt,
A_MinFlt, B_MajFlt, B_MinFlt.
PrHard, SeHard. Corresponding processor has one of the following hardware status bits reset, PrHWStat or
SeHWStat: Alin_Ok, ICM_Ok, RTC_Bat, Ext_Bat. If the instrument supports the battery not fitted option, e.g.
Options.BattFit is FALSE in the T2550 TACTICIAN header block (v4.0 and later), the PrHWStat.Ext_Bat and/or
SeHWstat.Ext_Bat will be ignored.
PrSoft, SeSoft. Corresponding processor has one of the following software status bits set: SW_Fault, FngrFlt.
PrMCfail, SeMCfail. Corresponding processor machine operating state is FAILED.
PrSync, SeSync. Corresponding processor sync status is one of: SyncErr, FileErr, DBLoadEr, DBRunEr, or
DBSyncEr.
PrEdbSyn, SeEdbSyn. Edb (LIN database protocol resource) synchronisation failed.
SecWorse. TRUE indicates the secondary processor has worse subsystem health than the primary. This only
applies to instruments which allow a duplex pair to remain synchronised even when the secondary has worse
subsystem health compared to that of the primary (for example, T2750 V4/0 and later).
Change. A TRUE input to this parameter causes the processors to swap roles i.e. the primary processor becomes the
secondary, and vice versa. This request can succeed only if the processors are synchronised. Note that after the swap,
synchronisation is not automatically initiated. To re-synchronise the instrument, a TRUE input to the SYNC field (or
front-panel intervention) is required.
NOTE For Tactician instruments, use the PriFlags (Primary processor) and SecFlags (Secondary processor)
subfields of the LINMAPD block to initiate this action.
New_DB. (Unused at current issue) If a database filename is specified in this field then after a successful processor
swap the new primary attempts to run this new database. This is cleared after a SYNC or DESYNC command (successful
or otherwise).
HA082375U003
Issue 33 August 2019 Page 278
RMEMDIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
This block provides monitoring and diagnostics information concerning the flash memory in the instrument used for
historical storage of recorded data. The main function of the block is to provide life expectancy information for the flash
memory used to store Data Recording files, .uhh. The block will be automatically generated when the first point for data
recording is defined using LINtools Data Recording Configurator.
A single RMEMDIAG block provides support for both primary and secondary modules of an I/O subsytem configured
for duplex operation. However, only fields associated with the primary module are relevant in an instrument configured
for simplex operation, and fields associated with the secondary module remain at the default value.
IMPORTANT Both primary and secondary modules contain an internal flash memory device, providing
extremely high reliability for data recording. Flash memory slowly wears out with use, once the memory life has
expired its reliability is not guaranteed, and the appropriate module(s) must be replaced.
Data recording. Data recording applies to the capturing and storing of process data into the instruments internal
flash memory.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 279 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS RMEMDIAG
Overwrites
PrWearAv, SeWearAv. Shows the approximate average level of wear that has occurred in the flash memory on
the primary or secondary module respectively. This value is calculated using the device manufacturers specified life
expectancy. If this value reaches 100%, data recording is not prohibited, but recorded data may be compromised.
SeWearAv remains at the default value when the instrument is configured for simplex operation.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
PrNoMem, SeNoMem. Asserted, if insufficient data recording memory exists in the primary and secondary
module respectively. Indicates insufficient or incorrect data recording memory exists in the module.
PrThresh, SeThresh. Asserted, if PrWearHi or SeWearHi on the primary or secondary respectively has
exceeded 100%.
PrLifeEx, SeLifeEx. Asserted, if the data recording memory in the primary and secondary module respectively,
has exceeded 100% of the life expectancy limit specified by the flash memory manufacturer.
NOTE The module that has exceeded its life expectancy limit must be replaced to ensure continued reliable
data recording.
PrMemErr, SeMemErr. Asserted, if an error was detected when accessing the data recording memory.
Indicates an error was detected when accessing the flash memory on the primary or secondary respectively.
IMPORTANT If asserted, live data may fail to record and previously recorded data may be lost.
Combined. Asserted, if any alarm is active in the block. Adopts the same status message and priority number
as the block’s highest priority active alarm.
Status. Bitfield indicating memory/hardware error conditions.
PrNoMem, SeNoMem. TRUE, when Alarms.PrNoMem or Alarms.SeNoMem is TRUE respectively. It is
caused if the hardware does not contain appropriate memory, indicated by PrSize or SeSize set as 0 (zero), as
appropriate. This remains TRUE until a module containing flash memory device that supports data recording is
installed.
HA082375U003
Issue 33 August 2019 Page 280
RMEMDIAG DIAGNOSTIC FUNCTION BLOCKS
PrThresh, SeThresh. TRUE, when Alarms.PrThresh or Alarms.SeThresh is TRUE respectively. Indicates the
PrWearHi or SeWearHi on the primary or secondary respectively has exceeded the value defined in WearThr. This
remains TRUE until a primary and/or secondary module with appropriate flash memory is installed, or WearThr is
increased to exceed the value shown in PrWearHi or SeWearHi.
PrLifeEx, SeLifeEx. TRUE, when Alarms.PrLifeEx or Alarms.SeLifeEx is TRUE respectively. Indicates the
level of used data recording memory in the primary or secondary module, specified in PrWearHi, or SeWearHi
respectively, has attained the value defined in WearThr.
PrMemErr, SeMemErr. TRUE, when Alarms.PrMemErr or Alarms.SeMemErr is TRUE respectively. This
automatically provides a Severity level entry to the Event Log file, event_l.udz, on the instrument via the
Alarms.EventLog and Status.EventLog in the Header block. It can be caused if the primary or secondary module, as
appropriate, is removed without first synchronising, desynchronising and then stopping the database, when the data
recording memory was starting or operating. It should never normally be seen, because the most likely cause is a
hardware failure. This remains TRUE until the Reset.PrMemErr or Reset.SeMemErr is set TRUE. This will
immediately return to show TRUE if the hardware remains invalid.
Reset. Digital inputs used to reset errors indicators.
PrMemErr, SeMemErr. Set TRUE to clear Status.PrMemErr and Status.SeMemErr, and Alarms.PrMemErr or
Alarms.SeMemErr as appropriate.
WearThr. Defines the flash memory threshold. When this value is obtained, Status.PrThresh and Alarms.PrThresh
or Status.SeThresh and Alarms.SeThresh, as appropriate, are set TRUE. The default value of 75% provides sufficient time
to plan corrective action before the flash memory reaches 100% wear and potentially becomes unreliable. This applies to
both primary and secondary modules if the instrument is configured for duplex operation.
HA082375U003
Page 281 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS ROUTETBL
Block function
This block displays the routing table.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 282
RSRCDIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The RSRCDIAG block allows read access to any database resource. A resource is selected via the Resource field, and
the SubType field selects a particular portion of that resource. The start address along with the first 32 bytes of the selected
resource are displayed in the Segment, Offset, Base_0 to Base_1E fields respectively. The Timer field lets you scroll
automatically through all allocated resources of the type selected at a rate set by Timer (seconds).
The block also lets you explore any memory region in the instrument - by setting Resource to MEM_DIAG and
specifying the relevant Segment and Offset values.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 283 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS RSRCDIAG
MEM_DIAG. Allows the Segment and Offset fields to be used to specify a memory region start address for
display in the Base_0 to Base_1E fields. Note that Segment and Offset are normally read-only.
SubType. (RESOURCE/HEADER/DYNAMIC/LOCAL/POOL/MEM_DIAG) Selects the resource sub-type
required. The menu items are:
RESOURCE. The actual resource structure.
HEADER. The Block/Template header.
DYNAMIC. Dynamic data area of a block.
LOCAL. Local data area of a block.
POOL. Pool data area for Block/Template.
MEM_DIAG. Selected automatically if Resource = ‘MEM_DIAG’.
Index. Lets you select the resource number of the particular resource type that was selected in the Resource field. E.g.
setting Resource to BLOCK and Index to 4 displays the contents of BLOCK resource number 4.
Timer. When Timer is set to a non-zero number, the display scrolls through all allocated resources of the type selected
via Resource and SubType, at a rate of Timer seconds per resource. Resetting Timer to zero stops the scrolling process.
Segment, Offset. Together these fields display the start address of the selected resource. If Resource =
MEM_DIAG, these fields become read/write and let you select a start address for a memory region to be displayed in the
Base_0 to Base_1E fields.
Region. (ROM/RAM/E2ROM/UNUSED) Shows the memory device in which the selected resource resides. When
the Resource field has been selected as MEM_DIAG, Region shows the location of the selected memory region. The
menu items are:
ROM. ROM (read-only memory).
RAM. RAM (random access memory).
E2ROM. E2ROM (electrically erasable read-only memory).
UNUSED. No memory device used.
HA082375U003
Issue 33 August 2019 Page 284
RTB_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
This block displays diagnostic information on the routing table.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 118 following.
HA082375U003
Page 285 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS RTB_DIAG
HA082375U003
Issue 33 August 2019 Page 286
SD_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The SD_DIAG block provides diagnostic information about the SD card within a T2750 instrument.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 119 following.
HA082375U003
Page 287 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS SD_DIAG
REQ_SHUTDN. The card is about to enter quarantine mode. In this state, an error has been detected with the SD
card and the driver is in the process of performing an orderly transfer to QUARANTINE. This state only lasts
briefly.
QUARANTINE. The card is in quarantine mode. In this state, the driver has detected a fault with the SD card
and has entered a state where it will no longer access the card. This is to prevent possible (further) corruption of the
SD card contents.
UNKNOWN. The SD card driver has entered an unrecognised state. The SD card is not accessible whilst in this
state.
BlocksRd and BlocksWr. The number of blocks of data read and written from/to the SD card since the last power-
on/reset. The SD card data is always read/written in blocks of 512 bytes.
GoodTran. The total number of successful read and write transactions from/to the SD card since the last power-on/
reset. Note that a single transaction may consist of 1 or more blocks of 512 bytes, so it is expected that GoodTran <
(BlocksRd + BlocksWr)
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
PwrOnTim. TRUE indicates that the time taken for the firmware to load and run after a power-up/reset
(PwrOnTim) has completed more slowly or more quickly than expected (PwrOnExp) and has exceeded the
tolerance set by PwrOnTol.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Additional static, read-only information is available from the following parameters giving details about the SD card.
ManfId. The manufacturer’s identification.
OedID. The card’s OEM/Application ID.
ProdName. Product name, up to five ASCII characters.
SerialNo. The card’s serial number.
ManfMnth. Month of manufacture (1-12).
ManfYear. Year of manufacture (displayed as actual year number).
HwRev. Hardware revision number.
FwRev. Firmware revision number.
ErrorCounts page
The ErrorCounts page consists of a set of read-only fields which display a count of error types since the last power-on/
reset. Most values are expected to usually be zero. The SD card driver has retry mechanisms to allow it to recover from
occasional errors.
The information provided on this page is not intended for general use and is of only use to the manufacturer of the
instrument and/or during a support call.
HA082375U003
Issue 33 August 2019 Page 288
SFC_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
The SFC_DIAG block indicates the actual resource levels used by the current sequence (in the left half of the
specification menu as it appears in LINtools), and also the maximum resource levels allowed by the current software
version (in the right half).
NOTE The displayed parameter values are valid only at runtime in the target instrument.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 120 following.
HA082375U003
Page 289 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS SUM_DIAG
Block function
This block collects together and summarises data on network and database faults within a running instrument. Much of
the displayed data is also available via other diagnostic blocks, but SUM_DIAG highlights the most important
information and presents it in a simplified form. The block does some ‘expert’ analysis to yield meaningful fault
indications, which help you diagnose LIN and database faults as rapidly as possible.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 290
SUM_DIAG DIAGNOSTIC FUNCTION BLOCKS
HA082375U003
Page 291 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS SUM_DIAG
NOTE The NET field is included for future expansion and is currently unused.
EDB. (OK/‘N/A’/Teatt/Featt/Verify/Disconn/Idle). Shows the EDB (External Database) layer status. EDB hunts
through EDBs and displays fault status information on the first EDB it discovers with a problem. Menu items are in
ascending order of priority, as for the previous section.
OK. Shown if no EDB faults currently detected in any EDB.
N/A. Shown if EDBs are not appropriate (not currently used).
Teatt. Shown if at least one Teatt alarm is active in the EDB, i.e. local cached blocks are not being updated.
Generally caused by misnamed cached blocks. The block(s) causing the Teatt alarm will themselves be in software
alarm.
Featt. Shown if a Featt alarm is active, i.e. the local node is not sending cached block updates. Generally caused
by a node that is caching local blocks going offline. Otherwise, the fault may be caused by a remote node
requesting a block name that does not exist in this instrument. The remote node will flag a software alarm.
Verify. Shown if the EDB has not completed attachment, i.e. if the EDB state is INIT or VERIFYING. This is
generally a transient state entered during connection of remote databases.
Disconn. Shown if the EDB is not connected, i.e. the EDB state is DORMANT, DISCONNECTED or
DISCONNECTING. Generally caused by a remote database which does not exist or has halted. If the EDB was
created by the remote node, this is a transient state terminating when the local EDB is deleted. This is a non-
transient state if the remote node is disconnected or not running.
Idle. Shown if EDB layer is not functioning, i.e. the EDB state is OFFLINE. (This fault rarely occurs.)
Mode. (Auto/Init/Latch/Hold) Used to set and indicate the database operating mode.
Auto. Normal automatic operating mode.
Init. Resets block values and returns to Auto mode.
Latch. Latches highest priority status of each field until cleared by setting Mode to Auto.
Hold. Freezes current values.
Status. Bitfield showing general status information, see Table 121.
NOTE Only one bit is used currently - the other 15 are reserved for future use.
ScanRate. The local block server repeat time in milliseconds, or the repeat time of User Task 1 in instruments which
support this feature.
HA082375U003
Issue 33 August 2019 Page 292
T600TUNE DIAGNOSTIC FUNCTION BLOCKS
Block function
The T600TUNE block monitors the performance of the T600 Series instrument’s block servers and the proportion of time
used by each task in the system. Server data is shown as milliseconds per period (server cycle time). Task data is
expressed on a scale of 0 to 1000, i.e. x 0.1%.
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 122 following.
HA082375U003
Page 293 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS T600TUNE
T1period
User Task 1
T1used
User Task 2
Priority
User Task 3
User Task 4
Time
HA082375U003
Issue 33 August 2019 Page 294
TACTTUNE DIAGNOSTIC FUNCTION BLOCKS
Block function
The TACTTUNE block monitors the approximate CPU usage of each of the tasks in the TACTICIAN instrument,
including each one of the four User Task server parameters (UserT1 to UserT4), the cached server task (CacheSrv) and
the cached connections task (CacheCon).
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 295 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS TACTTUNE
HA082375U003
Issue 33 August 2019 Page 296
TOD_DIAG DIAGNOSTIC FUNCTION BLOCKS
Block function
This block provides a mechanism for controlling and monitoring network time synchronisation. The block’s modes
determine the operation of time synchronisation by allowing you to specify whether an instrument is to broadcast
(MASTER mode) or receive (SLAVE mode) the time-of-day, or is isolated from the network’s synchronisation efforts
(ISOLATED mode). If the instrument supports Simple Network Time Protocol (SNTP) the synchronised time-of-day can
be monitored.
NOTE To make an instrument act as a TOD slave to a cross-subnet master, configure the mapping to the
cross-subnet master. Refer to ELIN Comms User Guide (Part No. HA082429).
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 297 Issue 33 August 2019
DIAGNOSTIC FUNCTION BLOCKS TOD_DIAG
NOTE When using ELIN, if a node is required to act as a slave to a master that exists on a different subnet,
cross subnet mapping must be appropriately configured. Refer to ELIN Comms User Guide (Part No.
HA082429).
ISOLATED. The node neither broadcasts the time nor responds to time broadcasts and requests received from
other nodes.
In all modes except ISOLATED, changing the time of the local clock causes a time broadcast, and receiving nodes update
their clocks, unless they are in ISOLATED mode. No change of mode results.
NOTE The interval between regular broadcasts is not affected by these local clock-change broadcasts.
VALIDATE. Not supported.
SNTP. When SNTP mode is selected this block will display diagnostic data for SNTP server and client
functionality. If SNTP server and client functionality is not configured in the Time category of the Instrument
Properties dialog Alarms.Config is set TRUE.
Brdcasts. When Mode is not SNTP, this increments whenever a time update broadcast is transmitted from this node.
When Mode is SNTP and the SNTP server is configured, this will increment for every outgoing response to a time request.
NOTE These are responses are not broadcasts.
RcvdOk. When Mode is not SNTP, this increments whenever an incoming broadcast is accepted and used to update
the Real-Time Clock. When Mode is SNTP and the SNTP client is configured, this will increment whenever an incoming
response to a time request is received and successfully actioned.
RcvdRjct. When Mode is not SNTP, this increments whenever an incoming broadcast is rejected, e.g. because we are
a MASTER with higher priority than the sending MASTER. When Mode is SNTP and the SNTP client is configured, this
will increment whenever an incoming response to a time request is an explicit rejection (not a time-out), e.g. the targeted
SNTP server has not been correctly configured.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
OwnTime. Asserted when the time has not been successfully updated within the expected period (approx.
15 mins).
NoTime. Asserted when Real-Time Clock has failed when Mode is MASTER,or if the SNTP Server is enabled
but is unable to function.
Muffled. Asserted when the instrument is configured as a MASTER but has been muffled by a MASTER on a
lower-numbered node, or as a result of a NoTime alarm (i.e. its Real-Time Clock has not been set up). See Mode for
the definition of ‘muffled’.
Config. Asserted when the method for applying time synchronisation is incorrectly configured. When Mode is
not SNTP this may be caused by multiple TOD_DIAG blocks. This alarm will be asserted in all TOD_DIAG
blocks. This may also be caused by a conflict between the Mode configuration of this block and the configured Time
Sync category of the Instrument Properties dialog, i.e. if Mode is SLAVE, but the Time Synchronisation Method in
the Instrument Properties dialog is SNTP. (Default Alarm Priority = 4).
NeedTime. When Mode is SLAVE this is set to TRUE if the time has never been updated, or has not been successfully
updated within the expected period (approx. 15 mins). In ISOLATED mode it is always FALSE. In any other mode it
remains unchanged. When Mode is SNTP this is set to TRUE if the if SNTP Client is enabled, but has not been able to
obtain a time update from the configured servers (Server IP 1 or Server IP 2 parameter in the Time Sync category of the
Instrument Properties dialog), after 3 successive attempts with each.
ReqsIn. When Mode is MASTER this increments whenever a ‘request for time broadcast’ message is received from
another node. This message is typically sent when a TOD SLAVE has just started up, and therefore is requesting its time
to be updated as soon as possible. When Mode is SNTP this will increment for every incoming time request (even if SNTP
Server is disabled).
ReqsOut. When Mode is not SNTP, this increments whenever a ‘request for time broadcast’ is transmitted from this
node. When Mode is SNTP and the SNTP client is configured, this will increment whenever a time request is issued.
HA082375U003
Issue 33 August 2019 Page 298
USERTASK DIAGNOSTIC FUINCTION BLOCKS
Block function
The USERTASK block provides a mechanism for monitoring the task related timing information for each one of the four
User Task server parameters (T1 to T4), the cached sync task (CSync) and the cached conn task (CConn), and also the
proportion of time used by each task in the system. A ‘server’ is a specific process that updates strategy blocks (e.g.
synchronising cached blocks). One or more servers may be scheduled to run by each ‘task’, and the tasks are themselves
scheduled by the runtime executive (XEC).
NOTE Instruments that support this block, and the T640, use multiple block servers. This offers a 5ms xec
Tick. Instruments that do not support this block use a single block server, and run a 4ms xec Tick.
The left-hand half of the displayed block specification menu shows the server data. A ‘period’ is the server cycle time,
i.e. the time between subsequent executions of the first block on the update list. It is never less than 100ms and can reach
about 1500ms in big strategies. The right-hand side of the specification menu shows the task data; the proportions are
expressed on a scale of 0 to 1000, i.e. x 0.1%. Tasks at the top of the list have the lowest priority and those at the bottom
have the highest.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 299 Issue 33 August 2019
DIAGNOSTIC FUINCTION BLOCKS USERTASK
LastScan. This field gives the duration (in seconds) of the last ‘database scan’. The database scan is performed by the
background task, and principally performs the block sumchecking. It is derived from srv_ref_scan, which is the duration
of the last scan in xec ticks.
ThisScan. This field gives the duration (so far) of the current database scan. It is derived from srv_ref_time, which is
the raw xec timestamp of the start of the current scan.
NOTE Stretch, LastScan and ThisScan are extremely useful when testing the effectiveness of the User Task
Tuning algorithm if the instrument.
Suspendn. These fields indicate if the relative User Task has been suspended via the TaskHalt of the header block.
HA082375U003
Issue 33 August 2019 Page 300
XEC_DIAG DIAGNOSTIC FUNCITON BLOCKS
Block function
The XEC_DIAG block displays information on the tasks within the instrument’s operating system (XEC).
Block parameters
Symbols used in this table are explained in Table 1. Parameter information is given in Table 126 following.
HA082375U003
Page 301 Issue 33 August 2019
HISTORIAN FUNCTION BLOCKS
HA082375U003
Issue 33 August 2019 Page 302
IO FUNCTION BLOCKS
HA082375U003
Page 303 Issue 33 August 2019
IO FUNCTION BLOCKS AN_IP
Block function
Sqrt
Field
Anaolgue Characterise Invert
Input RomChar
Channel UserChar
HiFloTot
FALSE FALSE
FALSE Output
Input TRUE
Hardware Range by
√ Range by
HR, LR
-1
A - to - D HR_In, LR_In TRUE
TRUE AI
CJ_temp (hz)
InType
LoFloTot
LeadRes FALSE TRUE
TRUE (hz) (hz) FALSE
PlsSFact
Detect
Detect Count Derive
Total missed
rollover Pulses rate-of-change
pulses
TotFract
TotError RateChng
TotOverf TotReset
HiCut
LoCut
Compare Manual
Input
HiDflt EnbCuts
DEFAULT Manual
LoDflt TRUE
DEFAULT PV
First-order
Filter Auto
FALSE
HAA
Alarms
Filter LAA
Please refer to the schematic in Figure 48. The AN_IP block converts voltage, frequency, or resistance measurement
inputs to T600 Series instruments into floating point values in engineering units. In addition the block provides signal
conditioning, calibration, filtering and alarm capability.
The LIN function block can be used in a Manual mode where the process variable PV can be forced to a specified value
for testing purposes. Normal operation of PV resumes when the block is in Auto mode.
Pulse totalisation
With the frequency function selected (InType = Hz) and either LoFloTot or HiFloTot options TRUE the block counts,
scales, and totalises input pulses. Setting LoFloTot enables pulse-rates up to 1kHz to be accurately totalised and also
provides unprocessed and processed frequency measurement outputs (AI and PV, respectively). With HiFloTot set,
frequency outputs are not provided but the block can handle pulse-rates up to around 30kHz. Setting both option bits
FALSE disables pulse counting and allows frequency and rate-of-change of frequency measurements to be made. (Refer
to Figure 48.)
Open-circuit detection /protection
Some I/O modules support break detection on their analogue inputs, while others support only break protection. Please
refer to specific I/O module documentation for details. The AN_IP block can operate in either break detection mode, or
break protection mode, but not both at the same time. Making Options.BrkDetct TRUE selects break detection; making
it FALSE selects break protection. If you try to operate a break mode which is not supported by the particular I/O channel,
the Status.BadBrk bit is asserted.
HA082375U003
Issue 33 August 2019 Page 304
AN_IP IO FUNCTION BLOCKS
Break detection. Modules supporting break detection can detect a break in the input before any bad readings have
been made. As soon as this is detected the BrkDtctd status bit is asserted. The OCctdel alarm bit is also asserted, subject
to the delay specified in the Delay field. Delay can be applied either at the start of the break (i.e. the alarm bit going
TRUE is delayed), or at the end of the break (i.e. the alarm bit going FALSE is delayed), or both, using the
Options.OCdelSt and OCdelEnd bits, respectively.
The Options.InitFilt bit, when TRUE, causes the block’s first-order filter to be initialised whilst OCctdel or BrkDtctd is
TRUE. This means that already-filtered bad readings do not corrupt the subsequent good readings. Note that the OCctdel
alarm does not need to be enabled for InitFilt to act.
The effect on PV when a break is detected depends on the setting of two Options bits. HoldDect, if TRUE, causes the
last valid value of PV to be held. If FALSE, PV moves either to HR (if BreakUp is TRUE) or to LR (BreakUp FALSE).
These movements are reversed when the Options.Invert bit is TRUE.
Caution
A 0.5sec delay may occur before a break is detected, which means that the value of PV held my differ from the
correct value.
Break protection. In I/O modules supporting only break protection, when a break occurs the value of PV drifts
either up (BreakUp TRUE) or down (BreakUp FALSE). The direction is reversed if the Options.Invert bit is TRUE.
Execution of input blocks
Plant input blocks are normally executed at the start of a user task, before other blocks in the task. Because of this,
connections into an input block from other blocks in the same user task (e.g. feedback from an output block) transmit the
values resulting from the previous execution of the user task. Input connections from other user tasks, in this or other
nodes, are always executed before the current user task is run, and are guaranteed to result from a completed execution
of the source user task.
Block parameters
Symbols used in Table 127 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 305 Issue 33 August 2019
IO FUNCTION BLOCKS AN_IP
HA082375U003
Issue 33 August 2019 Page 306
AN_IP IO FUNCTION BLOCKS
NOTE. The Options.Invert bit affects the derivation of PV. See Options.
HAA, LAA. High and low absolute alarm limits applied to PV, with built-in 0.5% hysteresis as the alarm state is left.
If a limit is crossed, the appropriate alarm bit (HiLevel or LoLevel) is asserted.
Filter. Specifies the time constant (0-250 seconds) of a simple first-order filter applied to the value in PV. Set Filter
equal to zero to disable the filter.
HiCut. Specifies a high cutoff value for PV, whereupon PV sets to HiDflt (provided Options.EnbCuts is TRUE).
HiDflt. Default value adopted by PV when its calculated value is more than HiCut. See under HiCut.
LoCut. Specifies a low cutoff value for PV, whereupon PV sets to LoDflt (provided Options.EnbCuts is TRUE).
LoDflt. Default value adopted by PV when its calculated value is less than LoCut. See under LoCut.
RomChar. (None/J/K/T/S/R/E/B/N/W/W5/W3/MoRe/PRT/CU10). The value in AI can be processed by one of three
mutually exclusive characterising processes, selected via RomChar, UserChar and Sqrt. RomChar selects a
characterisation type from the ROM library. See Table 127 for details. The AN_IP block automatically adjusts the ROM
tables to suit the selected temperature base of the block.
NOTE To avoid conflict, specifying a value in RomChar other than ‘None’ automatically deletes any entry in
the UserChar field. Similarly, writing a tagname in UserChar deletes any RomChar entry.
UserChar. Specifies the name of a UCHAR block defining a 16-point (x,y) custom linearisation/characterisation
table to be applied to AI. (See note above.) The AN_IP block applies no temperature base correction to the UCHAR
table, so it must be defined in units that match the prevailing temperature base.
NOTE A sumcheck error detected in the UCHAR block trips the AN_IP block’s Alarms.UCharErr bit
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Hardware. A hardware alarm is generated when any of the bits in the Status parameter are set, e.g. in the event
of a fault in the I/O hardware.
HiLevel, LoLevel. These alarm limits are set by parameters HAA and LAA. A 0.5% hysteresis bandwidth
applied on leaving each alarm permits clean transitions into and out of the alarm condition.
OutRange. This alarm is tripped as soon as PV reaches a value of 5% above or below HR or LR respectively.
There is a 0.5% hysteresis band on each range value.
OCctdel. ‘Open-circuit delay’. With OCdelSt (Options) TRUE, this alarm trips after a delay specified by the
Delay parameter, if an open-circuit is detected in the block input from the field. With OCdelSt FALSE, the alarm
trips without delay. Similarly, with Options.OCdelEnd TRUE, OCctdel resets Delay seconds after the open-circuit
input has been restored. With OCdelEnd FALSE, the alarm resets immediately. (See Delay.)
NOTE. Use of burden resistors may affect open-circuit detection. Refer to specific instrument product
manual for details.
UCharErr. This alarm is tripped if a sumcheck error is detected in the user characterisation file specified in the
UserChar parameter.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
SiteNo. Specifies the address (1 - 8) on the T600 Series instrument’s internal serial bus where the I/O module
corresponding to this AN_IP block is located.
NOTE An invalid SiteNo sets the Missing status bit, and also that you cannot configure SiteNo if the Task
parameter is still at its default value of zero.
Channel. Defines the channel number (1 - n) within the I/O module specified by the SiteNo parameter, to which this
AN_IP block is attached. The number of channels available (n) depends on the I/O module type.
HA082375U003
Page 307 Issue 33 August 2019
IO FUNCTION BLOCKS AN_IP
NOTE An invalid Channel sets the Status.BadType bit, and configuration of the Channel is not permitted if
the Task parameter is still at its default value of zero.
InType. (Volts/mV_Int/mV_Ext/4 WIRE/3 WIRE/2 WIRE/Hz) Specifies input type. Volts configures the block as
a high-level voltage input with maximum range of -10 to +10V. For millivolt inputs, mV_Int and mV_Ext select internal
and external cold-junction compensation, respectively. For direct millivolt measurements, specify external CJC and set
the CJ_temp parameter to zero. The maximum mV range is -100 to +100mV. The options 4 WIRE, 3 WIRE, and 2 WIRE,
support 4-, 3-, and 2-wire resistance measurements (ohms), respectively, with a maximum range of 0 to 1000Ω. Hz
selects frequency input mode with a maximum range of 0 to 30kHz.
The input ranges given above are LIN function block maxima only - you should consult the I/O module documentation
for specific limits.
NOTE Where certain options are not available on certain channels, the Status.BadSetup bit is set.
HR_in, LR_in. High & low range of the measured input signal, in units appropriate to the currently selected InType
(V, mV, Ω, Hz). HR_in and LR_in define two points on a linear scale that map to points HR and LR, respectively, on a
linear engineering units PV scale. Nominally, when the real input is at the value in HR_in, PV equals HR; when at LR_in,
PV equals LR. Please refer to the section on HR, LR above for details.
NOTE Whenever InType is set to Volts, or when no characterisation is being applied, HR_in and LR_in can
be set independently of HR and LR. In all other cases the block automatically derives HR_in and LR_in from
HR and LR via the characterisation. The block compares the entered values of HR_in and LR_in with the list
of available hardware ranges supported by the I/O module, and chooses the ‘best fit’ range to maximise the
resolution of the input. Scaling to the exact values of HR_in and LR_in is done in software.
AI. The unprocessed input value, from which PV is derived.
NOTE The block normally derives AI from the average of the last four input samples. This averaging,
together with the internal filtering provided by some I/O modules, yields an increased resolution but a reduced
response speed. If speed of response is more important, both the I/O module’s hardware filter and the AN_IP
block’s input-averaging can be disabled by setting Options.DsblFilt TRUE.
CJ_temp. Cold junction temperature, only valid in the ‘mV’ input modes. With InType set to mV_Int, CJ_temp is
read-only and reports the temperature of the I/O module connector block as measured by its inbuilt sensor (if present).
With mV_Ext selected, you can write a known cold junction temperature in CJ_temp, or input a value via a connection
from the Strategy. Making CJ_temp zero disables cold-junction compensation and allows the block to function as a pure
mV input.
NOTE All temperatures are reported, and must be entered, in the units jointly specified by the TAbsolut
parameter, and the corresponding T600 block’s IP_type parameter. That is: °C, °F, K, or R.
NOTE Where certain options are not available on certain channels, the Status.BadSetup bit sets.
LeadRes. Specifies lead resistance value (Ω) for 2-wire measurements only. In 2-wire mode, LeadRes is read-write
and a previously-measured value must be written to this field. For RTDs being used in 3- or 4-wire modes, LeadRes is
read-only and is back-calculated by the block. Hence, should a ‘partial break’ to 2-wire operation occur, the input
continues to function (and Status.BrkWarn is asserted).
Delay. With OCdelSt TRUE, Delay specifies the delay (secs) before the Alarms.OCctdel bit is set after detection of
an open-circuit in the field input, and also, with OCdelEnd TRUE, the delay before the alarm is reset after restoration of
the input. Making OCdelSt and/or OCdelEnd FALSE cancels these delays independently. Figure 49 shows
schematically how Delay is implemented. The Delay facility is useful when short-term interruptions of the field input
are to be ignored as ‘noise’, and also when restoration of an open-circuit input is liable to be ‘noisy’.
Delay Delay
TIME
HA082375U003
Issue 33 August 2019 Page 308
AN_IP IO FUNCTION BLOCKS
Options. Bitfield selecting a variety of signal-processing options. The following information is given in addition to
the summary in Table 127.
Invert. If TRUE, this has the effect of mapping HR to LR_in, and LR to HR_in, i.e. of inverting the input signal,
see HR, LR section.
Sqrt. If TRUE, square root characterisation is applied to AI, i.e.
√ x
TAbsolut. Used in conjuction with IP_type.Imperial field of the associated T600 block to select the AN_IP
block’s prevailing temperature units. The T600 block globally selects the Imperial (°F/R) or SI (°C/K) system, but
each individual AN_IP block can specify either absolute (K/R) or relative (°C/°F) temperature units within that
system. The temperature units apply to CJ_temp, and to any RomChar characterisation (i.e. the fixed tables). No
temperature base corrections are applied to user-specified characterisations in UCHAR blocks.
DsblFilt. TRUE disables the low-level filter in the I/O module’s A-to-D hardware, this is not the AN_IP block’s
first-order filter. The characteristics of I/O modules vary and not all analogue inputs support low-level filters.
Please refer to the specific module documentation for details.
LoFloTot. Selects ‘low’ flow-rate totalisation, involving pulse input rates not exceeding 1kHz. Valid only when
InType = Hz. When TRUE, the block counts input pulses, scales the count by PlsSFact, and stores the running total
in Total plus TotFract. AI and PV report valid frequency values, but RateChng is disabled.
HiFloTot. Selects ‘high’ flow-rate totalisation, involving pulse input rates from 1kHz to around 30kHz. Valid
only when InType = Hz. When TRUE, the block counts and totalises input pulses as for LoFloTot, but AI, PV,
RateChng, and the rest of the block functions are disabled. Refer to the schematic in Figure 48. Note that if TRUE,
HiFloTot overrides LoFloTot.
TotOverf. Latches TRUE if Total ‘rolls over’ after reaching 99 999 999.
Status. Bitfield indicating general comms./hardware error conditions. The following information is given in addition
to the summary in Table 127.
TotError. Asserts during periods when the block detects that input pulses are being missed, and hence Total is
not incrementing correctly. Note that the TotError flag is non-latching and must therefore be captured by the
Strategy if required.
BlockErr. Sets if there is insufficient RAM left to run the block. The block is then not updated, and other blocks
must be deleted to free up RAM.
Total. Integral part of the scaled total pulse count.
TotFract. Fractional part of the scaled total pulse count.
PlsSFact. Pulse scale factor. Number by which the input pulse frequency (Hz) is divided to produce the scaled pulse
count, Total plus TotFract. E.g. 1000 pulses input per second with PlsSFact = 100.000 causes Total to be incremented
by 10 counts per second.
HA082375U003
Page 309 Issue 33 August 2019
IO FUNCTION BLOCKS AN_OUT
Block function
Please refer to Figure 50. The AN_OUT analogue output block converts ranged analogue variables (floating point
numbers) from a Strategy running in a T600 Series controller into voltage or current outputs (depending on the
capabilities of the associated I/O hardware). The block provides Auto/Manual/Track control, Inversion and Alarms.
Outputs from different instruments can be cross-coupled in redundant configurations to enhance the level of systems
integrity. In such configurations a ‘master’ output normally controls the plant; if the master instrument fails, a ‘slave’
automatically takes over. Please refer to the specific hardware documentation for details.
Block parameters
Symbols used in Table 128 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 310
AN_OUT IO FUNCTION BLOCKS
NOTE The Invert bit affects the derivation of the output. See Invert.
AO. Analogue output. Actual output (as opposed to the demanded output OP or Track value) from the block before
any inversion and de-ranging. AO is a special parameter, in that it is guaranteed to be correctly set up before any other
blocks start to execute (including power fail low options, if applicable). This feature allows AO to be connected into the
InitDmnd field of the MAN_STAT block.
Track. Source of AO in Track mode.
SelTrack. TRUE selects Track mode.
Invert. If TRUE, this has the effect of mapping HR_OP to LR_out, and LR_OP to HR_out, which inverts the sense of
the output signal, e.g. for fail-safe operation or for reverse-acting valves, see HR_OP, LR_OP section.
NotAuto. TRUE when the block is not operating in Auto mode.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Hardware. A hardware alarm is generated when any of the bits in the Status parameter are set, e.g. in the event
of a power interruption, incorrect module type, circuit hardware fault, etc.
CctFault. Circuit fault. Reported when the module detects an open circuit (on current outputs), or a short circuit
(on voltage outputs).
HA082375U003
Page 311 Issue 33 August 2019
IO FUNCTION BLOCKS AN_OUT
OvrDrive. Output overdrive condition. Reported when the output signal is being overdriven by another output
module. Used in redundant control strategies. Note that this facility is not supported by all I/O hardware; please
refer to specific hardware documentation.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
SiteNo. The address on the T600 Series instrument’s Internal Serial Bus (ISB) of the
I/O module to which the AN_OUT block is linked. Valid ISB addresses depend on the T600 I/O hardware in use. E.g.,
in a T640 instrument, I/O sites 1 and 2 are allocated SiteNos of 1 and 2 respectively, and any external I/O modules take
SiteNos of 3 onwards. An invalid SiteNo sets the Status.Missing bit.
NOTE You cannot configure SiteNo if the Task parameter is still at its default value of zero.
OutType. (Volts/mA). Selects voltage or current output type. Volts configures the block as a high level voltage output
with a maximum range of –10 to +10V. mA configures the block as a current output with a maximum range of –20 to
+20mA.
The output ranges given above are block maxima only - you should consult the I/O module documentation for specific
limits.
NOTE. Where certain options are not available on certain channels, the Status.BadSetup bit is set.
HR_out, LR_out. High & low range of the output signal, in units appropriate to the currently selected OutType (Volts
or mA). HR_out and LR_out define two points on a linear scale that map to points HR_OP and LR_OP, respectively, on
a linear engineering units AO scale. Nominally, when AO equals HR_OP, the real output is at the value in HR_out; when
at LR_OP, the real output equals LR_out. Please refer to the section on HR_OP, LR_OP above for details. Note that
HR_out cannot exceed 10V or 20mA when OutType = Volts or mA, respectively. HR_out and LR_out can always be set
independently of HR_OP and LR_OP.
The block compares the entered values of HR_out and LR_out with the list of available hardware ranges supported by the
I/O module, and chooses the ‘best fit’ range to maximise the resolution of the output. Scaling to the exact values of
HR_out and LR_out is done in software.
Status. Bitfield indicating general comms./hardware error conditions, see Table 128.
Options. Bitfield whose bits specify - if TRUE - what happens to the block’s analogue output in the event of a power-
up (after a power failure), or a CPU failure. If FALSE, the bits have no effect on the output, i.e. it holds its existing level
in the event of a warm or ‘tepid’ start, or adopts its configured value under cold start conditions, see Table 128.
Channel. Specifies a channel number within the I/O module to which the AN_OUT block is linked. Valid channel
numbers depend on the type of I/O hardware in use. Please refer to the I/O module documentation for details.
NOTE An invalid Channel sets the Status.BadType bit, and configuration of the Channel is not permitted if
the Task parameter is still at its default value of zero.
HA082375U003
Issue 33 August 2019 Page 312
DG_IN IO FUNCTION BLOCKS
Block function
Manual
Field
De-Bounce
Digital Input RealIn n In n
Filter
Channel
n -1 Auto
Please refer to Figure 51, which schematises one of the eight digital channels. The DG_IN block allows eight digital
signals to be input to the Strategy, and provides auto/manual control, inversion, and debounce. Inputs can be configured
as either all contact or all voltage sensing. Contacts can use the output from the transmitter power supply (which has an
overload alarm), provided it is not also supplying analogue transmitters. Alternatively, the external pullup voltage
terminal (1X) can be used for hardware pullup of up to eight digital inputs. Voltage sensing inputs have variable
switching threshold.
Alarm fields are not provided directly on digital input channels. The DIGALARM block should be used for alarms on
each input if required.
Block parameters
Symbols used in Table 129 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 313 Issue 33 August 2019
IO FUNCTION BLOCKS DG_IN
HA082375U003
Issue 33 August 2019 Page 314
DG_IN IO FUNCTION BLOCKS
DeBounce. Debounce time, in seconds. This is the minimum time a change in the digital input signal must persist
before the RealIn n parameter is allowed to switch to the new state. The filtering action of DeBounce is shown in
Figure 52. (Minimum debounce time is dependent on scan time; maximum time is 5 seconds.)
SCAN PERIOD
INPUT
SIGNAL
RealIn n
DE BOUNCE DE BOUNCE
TIME
Status. Bitfield indicating general comms./hardware error conditions. Please refer to Table 129 for details.
BitCount. Reports the number of bits (digital inputs) supported by the associated hardware module.
HA082375U003
Page 315 Issue 33 August 2019
IO FUNCTION BLOCKS DG_OUT
Block function
Manual
Input
Manual
Out n
Auto Output ReadBack n
Auto
Field Output
Feedback
Track Invert n
RealOut n
Track n Field Output T600 Series
Track Output State Digital Output
Track -1 Channel
n
Please see Figure 53, it refers to one of the eight digital channels. The DG_OUT block transfers logic signals to digital
output channels on a T600 Series digital output module. The block provides Auto/Manual/Track control, inversion and
discrepancy checking of output feedback.
Block parameters
Symbols used in Table 130 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 316
DG_OUT IO FUNCTION BLOCKS
HA082375U003
Page 317 Issue 33 August 2019
IO FUNCTION BLOCKS DG_OUT
HA082375U003
Issue 33 August 2019 Page 318
DGPULS_4 IO FUNCTION BLOCKS
Block function
Manual Input
Invert n
FALSE
Strategy Auto FALSE
Input Out n
RealOut n T600 Series
(Pulse) Digital Output
TRUE -1 Channel
TRUE n
Mode n Track n
The schematic in Figure 54 shows one of the four channels of the DGPULS_4 block. Each channel’s mode can be
independently selected. In AUTO mode a channel transfers digital outputs from the strategy to the field via the associated
T600 Series digital output module. Manual, track, and four pulse modes, as well as inversion and discrepancy-checking,
are also provided. Note that for a T640 instrument with high-level I/O boards in both sites, only Site 1 can support a
DGPULS_4 block.
Pulse modes
NOTE The digital output hardware must support a timing function on each channel used by a DGPULS_4
channel in a pulse mode, see hardware specification in the instrument’s manual.
In the pulse modes the block channels can output a single pulse (ONE_SHOT), a time-proportioned rectangular wave
(TPO), a train of pulses (PLS_TRN), or, by connecting together a pair of channels a dual pulse (DUAL_PLS). The set
of Valuen_1 to Valuen_3 parameters specify timings and mark/space ratios of the pulses.
In all pulse modes, the task execution of the block derives integer values that represent units of either 10ms or 20ms
(depending on the I/O module). These integer values are downloaded to the I/O module so that it can perform the
necessary high speed timing.
In the simplified schematic of Figure 54 the RealOutn parameter is shown as driving the output hardware, but in reality
this field is updated by reading back its state from the I/O module. Similarly, as both the requested digital state and its
readback value are possibly running considerably faster in the hardware than in the block, they are compared at the I/O
module, and a healthy value (BitnErr flag) returned to the block. BitnErr flags are latching, so that fleeting mis-matches
are not lost. The I/O module asserts a healthy flag every time the value has been successfully communicated to the main
processor. Inversion also is implemented in the I/O module (not as suggested in the schematic) for similar reasons.
HA082375U003
Page 319 Issue 33 August 2019
IO FUNCTION BLOCKS DGPULS_4
ONE_SHOT mode
MARK
CHANNEL
OUTPUT
SPACE
Accumulated
Value
A typical application for the one-shot pulse output is in on/off motor-driven valves. In this mode the block generates a
single pulse (see Figure 55). At each execution of the block the value currently in Valuen_1 is added to an accumulator
that represents the remaining pulse length in seconds. Whenever the accumulator is non-zero, RealOutn = TRUE, i.e. the
output is in the ‘mark’ state, and the accumulator counts down in real time. Whenever the accumulator is zero, RealOutn
= FALSE, i.e. the output is in the ‘space’ state, and the accumulator is ‘idle’. The ONE_SHOT accumulator is unsigned.
At any time, making the Accn_Rst (Options) bit TRUE resets channel n’s accumulator to zero.
TPO mode
TPO (time-proportioned output) mode generates a continuous rectangular wave. Valuen_1 specifies the period in
seconds (see Figure 56), Valuen_2 specifies the percentage of the cycle at mark state, and Valuen_3 specifies both a
minimum mark duration and a minimum space duration (in seconds). If the requested pulse length - either mark or space
- is less than the specified minimum, the pulse is not generated, i.e. the output holds at a steady space or mark,
respectively. If the length of the mark state (Valuen_2) is changed whilst the output is in that state, the change takes effect
immediately, without waiting until the end of the current period.
Resolution-compensation is applied, so that if the requested mark length cannot be represented within the resolution of
the I/O module’s pulse length, the actual mark length varies about the requested one. E.g. if the mark state is specified
as 25ms long, but the I/O module can only resolve to the nearest 10ms, the actual mark length will alternate between 20ms
and 30ms, averaging 25ms. Resolution-compensation is accurate to 12 bits.
(The Options.Accn_Rst bit has no application in TPO mode.)
Valuen_2
(%)
MARK
CHANNEL
OUTPUT
SPACE
Valuen_1
HA082375U003
Issue 33 August 2019 Page 320
DGPULS_4 IO FUNCTION BLOCKS
Pulses have a mark/space ratio of one (to within the 10ms/20ms resolution). Any change to Valuen_2 (period) takes
immediate effect.
At any time, making the Accn_Rst (Options) bit TRUE resets channel n’s accumulator to zero. The PLS_TRN
accumulator is unsigned.
Valuen_2
MARK
CHANNEL
OUTPUT
SPACE
DUAL_PLS mode
The Dual_Pls mode combines two channels as a pair - channels 1 and 2 form one pair, channels 3 and 4 another. A
channel-pair outputs a ‘linked’ pair of pulses, one via each channel (see Figure 58).
Positive
accumulator
value
MARK
CHANNEL 1
OUTPUT
SPACE
Pulse lengths between
Value2_1 & Value2_2
MARK
CHANNEL 2
OUTPUT
SPACE
Value1_2 Negative
minimum gap accumulator
value
Considering the Ch1-Ch2 pair, at each execution of the block the value currently in Value1_1, which may be positive or
negative, is added to an accumulator that represents the required pulse length in seconds. When the accumulator is zero,
both channels output a space condition. When the accumulator is positive (and greater than Value2_1) a mark condition
is output on channel 1, and the accumulator counts down in real time. When the accumulator is negative (and of absolute
value greater than Value2_1) a mark condition is output on channel 2, and the accumulator counts up in real time.
Value2_1 therefore represents a minimum permitted pulse length. Value2_2 specifies a maximum pulse length that
cannot be exceeded. Value1_2 specifies a minimum gap that must exist between a mark on channel 1 and a mark on
channel 2.
At any time, setting the Acc1_Rst (Options) bit TRUE resets a positive accumulator value, and Acc2_Rst TRUE resets a
negative accumulator value, these bits are not self-resetting.
HA082375U003
Page 321 Issue 33 August 2019
IO FUNCTION BLOCKS DGPULS_4
Block parameters
Symbols used in Table 131 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 322
DGPULS_4 IO FUNCTION BLOCKS
HA082375U003
Page 323 Issue 33 August 2019
IO FUNCTION BLOCKS DGPULS_4
Bit1Err to Bit4Err. These alarms occur for channels 1 to 4, respectively, when a discrepancy is detected
between the desired channel output RealOutn and a readback output, indicating a fault in an output channel. Any
inversion configured for the channel is allowed for in the discrepancy checking.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
SiteNo. Specifies the address (1 - 8) on the T600 Series instrument’s Internal Serial Bus where the I/O module
corresponding to this DGPULS_4 block is located.
NOTE An invalid SiteNo sets the Status.Missing bit, and configuring the SiteNo is not permitted if the Task
parameter is still at its default value of zero.
BitCount. Reports the number of bits (digital outputs) supported by the associated hardware module.
Options. Bitfield for selecting block operating options, see Table 131.
Status. Bitfield indicating general comms./hardware error conditions, see Table 131.
Pullup. (External/5/15/24). Defines the output voltage used for the high logic status.
HA082375U003
Issue 33 August 2019 Page 324
AI_CALIB IO FUNCTION BLOCKS
Block function
The AI_CALIB block is used to calibrate analogue input channels in the T600 Series of I/O modules. A database is
created in the T600 Series instrument that contains the AN_IP block associated with the I/O module to be calibrated, plus
an AI_CALIB block. The calibration block effectively ‘attaches’ itself to the named AN_IP block, forces it into CALIB
mode, then works through it to calibrate the specified I/O channel. Via its Action field(s), the calibration block displays
one of a sequence of instructions for the operator to perform, who then sets the Status.CONTINUE field when ready to
move on to the next instruction.
In a remote instrument, a cached copy of the calibration block is created so that the calibration process can be driven via
a full screen interface to the block.
Details of how to calibrate the various types of analogue input module are given in the Calibration procedures section
below.
Block parameters
Symbols used in Table 132 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 325 Issue 33 August 2019
IO FUNCTION BLOCKS AI_CALIB
Status. (WAITING/CONTINUE/PROCESSING/ABORT) Shows the operator the current status of the calibration
process, and also allows him to abort it.
WAITING. Shown whenever the AI_CALIB block is awaiting an action by the operator.
CONTINUE. Must be entered by the operator when the awaited action is completed.
PROCESSING. Displayed when the AI_CALIB block is in the process of carrying out an action.
ABORT. Entering this field abandons the calibration process.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Failed. Indicates an abort from the calibration process. This alarm’s priority of 6 is automatically set by the
block and means that, if it occurs, the alarm must be acknowledged before continuing.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
SiteNo. Specifies the address (1 - 8) on the T600 Series instrument’s internal serial bus of the I/O module whose
analogue input is being calibrated. The AI_CALIB block automatically copies this field from the corresponding one in
the AN_IP block when first attached, but SiteNo may be altered subsequently.
NOTE Configuration of the SiteNo is not permitted if the Task parameter is still at its default value of zero.
Channel. Specifies the number (1 - 8) of the analogue input channel being calibrated. The AI_CALIB block
automatically copies this field from the corresponding one in the AN_IP block when first attached, but Channel may be
altered subsequently.
NOTE Configuration of the Channel is not permitted if the Task parameter is still at its default value of zero.
InType. (HiLevel/Therm/RTD/Freq) Specifies the type of analogue input to be calibrated. The AI_CALIB block
automatically copies this field from the corresponding one in the AN_IP block when first attached, but InType may be
altered subsequently.
NOTE The entire calibration process for a particular InType must be run to completion for all supported
ranges, or aborted. It is not possible to calibrate only some of the ranges.
Range. (0-1.25 V/0-2.5 V/0-5 V/0-10 V/0-12.5 mV/0-25 mV/0-50 mV/0-100 mV/
0-50 Ohm/0-100 Ohm/0-500 Ohm/0-1k Ohm/0-30k Hz) Read-only field reporting which one of the specified channel’s
hardware ranges is currently being calibrated. See the note in the InType section above.
AN_IP. Specifies the name of the AN_IP block to be attached to. Once a valid block name has been entered, the
AI_CALIB block attaches to it, and forces it into CALIB mode.
AI_Alarm. (Invalid/Bad Loop/In alarm/OK) Indicates the current state of the calibration block.
Invalid. Means an invalid configuration for the channel, or no AN_IP block found.
Bad Loop. Means that the AN_IP and AI_CALIB blocks are not running in the same user task (‘loop’), which
they must be for calibration to operate.
In alarm. Means that the attached AN_IP block is in alarm.
OK. Displayed in all other cases.
Calibration procedures
Caution
Only authorised personnel using equipment of an approved standard should carry out hardware re-calibration.
To start the calibration process, enter the ‘parent’ I/O block name in the AI_CALIB block’s AN_IP field. Assuming the
parent block can be found, the calibration block attaches itself to it and then copies other fields as applicable, SiteNo,
Channel, InType, Range. The Action field reports Done, and the Status field reports WAITING. Begin the calibration
process by setting Status to CONTINUE.
HA082375U003
Issue 33 August 2019 Page 326
AI_CALIB IO FUNCTION BLOCKS
This section tabulates each of the commands given by the block and the actions required of the operator in response.
InType must be set to the required hardware type before the calibration process begins, as each type is calibrated as a
separate operation.
High-level analogue input calibration sequence (InType = HiLevel)
Step Action message Action required of operator, before entering CONTINUE
1 Apply Low rng Apply to the input the value equivalent to the low end of the range as given in the Range field.
(This is always 0V for this InType).
2 Enter Low rng Enter into the Value field the EXACT voltage applied, in volts.
3 Apply High rng Apply to the input the value equivalent to approximately 100% of the high end of the range as
given in the Range field.
4 Enter High rng Enter into the Value field, the EXACT voltage applied, in volts.
5 Steps 1 to 4 are repeated for each range supported by the connected hardware
6 Write E2 data? CONTINUE only if you want the calibration data updated in the I/O module. Stopping before
this point abandons this calibration, with no changes to the setup of the unit.
4 Enter High rng Enter into the Value field, the EXACT voltage applied, in mV.
5 Steps 3 & 4 are repeated for each range supported by the connected hardware
6 Apply switches Connect the input as shown in the Figure 59, with both switches open.
7 Enter Vcjc Refer to Figure 59. Measure Vcjc and enter the value into the Value field, in volts.
8 Apply switches Close switch SW1 and leave SW2 open.
9 Enter Vbase Measure Vcjc (which is now ‘Vbase’ of the CJC transistor) and enter the value into the Value
field, in volts
10 Apply switches Open switch SW1 and close SW2.
11 Enter Vcjc Measure Vcjc and enter the value into the Value field, in volts
12 Write E2 data? CONTINUE only if you want the calibration data updated in the I/O module. Stopping before
this point abandons this calibration, with no changes to the setup of the unit.
SW1
SW2
12K 3K3
5V +
Supply – 1
σΔ Ccjc
Vcjc
CJC
ICE 2
Cin transistor
CEL
Type Vtherm
V
K
3
0ºC
HA082375U003
Page 327 Issue 33 August 2019
IO FUNCTION BLOCKS AI_CALIB
C1
C4
r = 25ý V1, R
C3
V3
C2
C1
C4
Rhi V1, R
C3
V3
r = 25ý
C2
HA082375U003
Issue 33 August 2019 Page 328
AO_CALIB IO FUNCTION BLOCKS
Block function
The AO_CALIB block is used to calibrate analogue output channels in the T600 Series of I/O modules. A database is
created in the T600 Series instrument that contains the AN_OUT block associated with the I/O module to be calibrated,
plus an AO_CALIB block. The calibration block effectively ‘attaches’ itself to the named AN_OUT block, forces it into
CALIB mode, then works through it to calibrate the specified I/O channel. Via its Action field(s), the calibration block
displays one of a sequence of instructions for the operator to perform, who then sets the Status.CONTINUE field when
ready to move on to the next instruction.
In a remote instrument, a cached copy of the calibration block is created so that the calibration process can be driven via
a full screen interface to the block.
Details of how to calibrate the various types of analogue output module are given in the Calibration procedures section
below.
Block parameters
Symbols used in Table 133 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 329 Issue 33 August 2019
IO FUNCTION BLOCKS AO_CALIB
Status. (WAITING/CONTINUE/PROCESSING/ABORT) Shows the operator the current status of the calibration
process, and also allows him to abort it.
WAITING. Shown whenever the AO_CALIB block is awaiting an action by the operator.
CONTINUE. Must be entered by the operator when the awaited action is completed.
PROCESSING. Displayed when the AO_CALIB block is in the process of carrying out an action.
ABORT. Entering this field abandons the calibration process.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Failed. Indicates an abort from the calibration process. This alarm’s priority of 6 is automatically set by the
block and means that, if it occurs, the alarm must be acknowledged before continuing.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
SiteNo. Specifies the address (1 - 8) on the T600 Series instrument’s internal serial bus of the I/O module whose
analogue output is being calibrated. The AO_CALIB block automatically copies this field from the corresponding one
in the AN_OUT block when first attached, but SiteNo may be altered subsequently. Note that you cannot configure
SiteNo if the Task parameter is still at its default value of zero.
Channel. Specifies the number (1 - 8) of the analogue output channel being calibrated. The AO_CALIB block
automatically copies this field from the corresponding one in the AN_OUT block when first attached, but Channel may
be altered subsequently. Note that you cannot configure Channel if the Task parameter is still at its default value of zero.
OutType. (Volts/mA) Specifies the type of analogue output to be calibrated. The AO_CALIB block automatically
copies this field from the corresponding one in the AN_OUT block when first attached, but OutType may be altered
subsequently.
NOTE The entire calibration process for a particular OutType must be run to completion for all supported
ranges, or aborted. It is not possible to calibrate only some of the ranges.
Range. (0-1.25 V/0-2.5 V/0-5 V/0-10 V/0-2.5 mA/0-5 mA/0-10 mA/0-20 mA) Read-only field reporting which one
of the specified channel’s hardware ranges is currently being calibrated. See the note in the OutType section above.
AN_OUT. Specifies the name of the AN_OUT block to be attached to. Once a valid block name has been entered,
the AO_CALIB block attaches to it, and forces it into CALIB mode.
AO_Alarm. (Invalid/Bad Loop/In alarm/OK) Indicates the current state of the calibration block.
Invalid means an invalid configuration for the channel, or no AN_OUT block found.
Bad Loop means that the AN_OUT and AO_CALIB blocks are not running in the same user task (‘loop’), which
they must be for calibration to operate.
In alarm means that the attached AN_OUT block is in alarm.
OK is displayed in all other cases.
Calibration procedures
Caution
Only authorised personnel using equipment of an approved standard should carry out hardware re-calibration.
To start the calibration process, enter the ‘parent’ I/O block name in the AO_CALIB block’s AN_OUT field. Assuming
the parent block can be found, the calibration block attaches itself to it and then copies other fields as applicable, SiteNo,
Channel, OutType, Range. The Action field reports Done, and the Status field reports WAITING. Begin the calibration
process by setting Status to CONTINUE.
This section tabulates each of the commands given by the block and the actions required of the operator in response.
OutType must be set to the required hardware type before the calibration process begins, as each type is calibrated as a
separate operation.
HA082375U003
Issue 33 August 2019 Page 330
AO_CALIB IO FUNCTION BLOCKS
HA082375U003
Page 331 Issue 33 August 2019
IO FUNCTION BLOCK MOD_UIO
Block function
These blocks represent each of the hardware modules fitted in the base unit. This is because each MOD_UIO block
defines the Module’s type and position of a hardware module in the base unit, of the node indicated by the Node field.
Block parameters
Symbols used in Table 134 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 332
MOD_UIO IO FUNCTION BLOCK
particular Version 1 I/O Module hardware is not compatible. Version 2 I/O Module hardware must be fitted in a
redundant subsystem, where appropriate.
Version. The version number of the module fitted at the selected SiteNo.
Status. Bitfield indicating general comms./hardware error conditions. The following information is given in addition
to the summary in Table 134.
Missing. If TRUE, the hardware is not located at address defined by Node and SiteNo, sets Alarms.Hardware
TRUE.
BadType. If TRUE expected and fitted modules are not compatible, sets Alarms.Hardware TRUE.
BadSite. If TRUE specified SiteNo exceeds the total number of slots on the base unit, sets Alarms.Hardware
TRUE.
BadTask. If TRUE, the specified Task Rate is not synchronised to the I/O subsystem, sets Alarms.Hardware
TRUE.
HA082375U003
Page 333 Issue 33 August 2019
IO FUNCTION BLOCKS AI_UIO
Block function
I/O Subsystem AI ChType
Field Ranging
Analogue
0 Invert
Input
Channel
CJC TC
Compensation -1
Hardware PYRO
Filter Error /
A - to - D
Emissiv
HR +
Linear Err AUTO
LR
Built in/User Char Out Min Math** MODE
PVOffset
Built in/User Char Out Max Built in /
User Char
mA or V & SBreak ON & OR PV
AI<LR_in -10% **Math linearisations are SqRoot; To3over2, and To5over2
***Indirect inputs are mV, mA, V, Ohms, Zirconia and Pot. Direct inputs are TC, Pyro, and RTD
Please refer to the schematic in Figure 62. This block converts voltage, current, or resistance measurement units into
floating point values in engineering units. In addition the block provides signal conditioning, calibration, filtering and
alarm capability.
The function block can be used in a MANUAL mode where the process variable PV can be forced to a specified value
for testing purposes. Normal operation of PV resumes when the function block is in AUTO mode.
NOTE Not all fields are applicable to every channel type, and are therefore ‘greyed out’ in LINtools
configuration software for clarity.
Open-circuit detection/protection
Some I/O modules support break detection on their analogue inputs, while others support only break protection, see
Tactician Series Instrument documentation for details.
Break detection. Modules supporting break detection detect a break in the input before any bad readings have been
made. When detected the Status.BrkDtctd bit is set. The Alarm.OCctDel bit is also set, subject to any delay specified in
the Delay field. Delay can be applied either at the start of the break (i.e. the alarm bit going TRUE is delayed), or at the
end of the break (i.e. the alarm bit going FALSE is delayed), or both, using the Options.OCDelSt and Options.OCDelEnd
bits, respectively.
The Options.InitFilt bit, when TRUE, causes the block’s first-order filter to be initialised whilst Alarm.OCctDel or
Status.BrkDtctd is TRUE. This means that already-filtered bad readings do not corrupt the subsequent good readings.
The Alarm.OCctDel bit does not need to be enabled for InitFilt to act.
The behaviour of PV under break conditions will depend on the value of PVErrAct (UP, DOWN or HOLD).
Caution
A delay may occur before a break is detected, which means that the value of PV held may differ from the
correct value.
HA082375U003
Issue 33 August 2019 Page 334
AI_UIO IO FUNCTION BLOCKS
Break protection. In I/O modules only supporting break protection, a break causes PV values to drift either up or
down. For break protection, sensor break (SBreak) actions can be configured to adopt an action as a result of a sensor
break. SBreak UP initiates a Drive high action to the hardware, SBreak DOWN, a Drive low action, and SBreak NONE
issues a take no action. The UP/DOWN directions are reversed if the Options.Invert bit is TRUE.
NOTE True Sensor Break on mA or V InType cannot be directly detected, as 0 (zero) mA or V is considered
a valid measurement on bi-polar inputs.
Execution of input blocks
Plant input LIN function blocks are normally executed at the start of a user task, before any other blocks in the task. As
a result, connections to an input block from other blocks in the same user task (e.g. feedback from an output block)
transmit the values resulting from the previous execution of the user task. Input connections from other user tasks, in this
or other nodes, are always executed before the current user task is run, and will result from a completed execution of the
source user task.
Block parameters
Symbols used in Table 135 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 335 Issue 33 August 2019
IO FUNCTION BLOCKS AI_UIO
HA082375U003
Issue 33 August 2019 Page 336
AI_UIO IO FUNCTION BLOCKS
Built in HR_in to LR_in HR_in to LR_in HR to LR Available subject HR_in, LR_in maps
characterisation to config onto HR, LR
RTD User X0 to X15 from the X0 to X15 from the Y0 to Y15 from the Available subject None
UCHAR block UCHAR block UCHAR block to config
Built in RTD ohm equivalent of ohm equivalent of Characterisation table Available subject None
characterisation characterisation characterisation table limits (see char) to config
table limits limits
Ohms Linear HR_in to LR_in - - Available HR_in, LR_in maps
onto HR, LR
Maths function HR_in to LR_in HR_in to LR_in HR to LR Not available HR_in, LR_in maps
onto HR, LR
User HR_in to LR_in X0 to X15 from the Y0 to Y15 from the Available subject None
UCHAR block UCHAR block to config
Pyrometer Linear HR_in to LR_in - - Available HR_in, LR_in maps
onto HR/emissivity,
LR/emissivity
User HR_in to LR_in X0 to X15 from the Y0 to Y15 from the Available subject Input to
UCHAR block UCHAR block to config character’tion
scaled by 1/
emissivity
Potentio- Linear 0 to 100% - - Not available 0,100% maps onto
meter except on PVError HR, LR
action
Maths function 0 to 100% 0 to 100% HR to LR Not available 0,100% maps onto
HR, LR
User 0 to 100% X0 to X15 from the Y0 to Y15 from the Available subject None
UCHAR block UCHAR block to config
HA082375U003
Page 337 Issue 33 August 2019
IO FUNCTION BLOCKS AI_UIO
alarm may not operate if the configuration is such that the clipping to the limits of the linearisation table precludes
it, then the column is marked “Available subject to config”.
NOTE. The Options.Invert bit affects the derivation of PV. See Options below.
Hi, Lo. High and Low absolute alarm limits applied to PV. If a limit is crossed, the appropriate alarm bit (Hi or Lo)
is asserted.
HiHi, LoLo. HighHigh and LowLow absolute alarm limits applied to PV. If a limit is crossed, the appropriate alarm
bit (HiHi or LoLo) is asserted.
Hyst. Hysteresis bandwidth value, applied inside all alarm levels.
Filter. Specifies the time constant (0-1000 seconds) of a simple first-order filter applied to the value in PV. Set Filter
equal to zero to disable the filter.
Char. (Linear/User/B/C/D/E/G/J/K/L/N/R/S/T/U/NiMoNiCo/PL2/NiNiMo/PtRe24/MoRe/Cu10/Cu53/PT100/
PT100a/Jpt100/PT1000/Ni100/Ni120/SqRoot/t038/To3over2/To5over2). Char selects a characterisation type to be
applied to the AI to produce the PV, see the following table for details. This block automatically adjusts the standard
tables to suit the selected temperature units of the block.
HA082375U003
Issue 33 August 2019 Page 338
AI_UIO IO FUNCTION BLOCKS
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Hardware. A hardware alarm is generated when the Status.HwFlt, Status.HwAuxFlt , or Status.BadTask bit is
set TRUE, e.g. in the event of a fault in the I/O hardware.
HiHi, LoLo. These alarm limits are set by parameters HiHi, and Hi fields.
Hi, Lo. These alarm limits are set by parameters Lo, and LoLo fields.
PVError. The PV has been determined from PVErrAct field. The PV error action is performed for the following
reasons:
Status.RngEr or
(PV > PVErrValue & PVErrAct = Up) or
(PV < PVErrValue & PVErrAct = Down) or
Status.BadSetup or
Status.HwFault or
Status.CalEr or
Status.BrkDtctd or
Status.HwAuxFlt or
Status.AuxCalEr or
(SBreak != None & (Type=mA or V) & AO<LR_in-10%(HR_in-LR_in)) or
Status.Missing* or
Status.BadType* or
Status.BadTask* or
CharErr alarm
*Prior to Tick 7, Missing, BadType and BadTask caused the input to default to 0.
OutRange. This is tripped if PV is greather than or equal to HR +10% of range or PV less than or equal to LR-
10% of range.
NOTE. It may not occur if the input is limited by the Characterisation table limits.
OCctDel. ‘Open-circuit delay’. With Options.OCDelSt TRUE, this alarm trips after a delay specified by the
Delay parameter, if an open-circuit is detected in the block input from the field. With Options.OCDelSt FALSE, the
alarm trips without delay. Similarly, with Options.OCDelEnd set TRUE, Options.OCctDel resets Delay seconds
after the open-circuit input has been restored. With Options.OCDelEnd FALSE, the alarm resets immediately, see
Delay.
NOTE Use of burden resistors may affect open-circuit detection. Refer to the instrument product manual for
details.
CharErr. The selected characterisation is not supported for this input type or the cold junction temperature or the
input exceeds the range of this table.
NotAuto. TRUE if operating in MANUAL, TEST, SIMULATE or CALIB mode.
ModBlock. TRUE if there is no corresponding MOD_UIO block.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Node. Specifies the LIN node number in hex format of the base unit where the module is fitted. The Node and SiteNo
identifies the MOD_UIO block to which this channel block applies. The channel block must be allocated to the same task
as its’ accompanying MOD_UIO block.
SiteNo. Specifies the position on the Base Unit where the I/O module corresponding to this block is located. The
Node and SiteNo identify the MOD_UIO block to which this channel block applies. The channel block must be allocated
to the same task as its associated MOD_UIO block. An invalid SiteNo sets the Status.Missing bit.
Channel. Defines the channel number within the I/O module specified by the SiteNo parameter, to which this AI_UIO
block is attached. The number of channels available depends on the I/O module type. An invalid Channel sets the
Status.BadType bit.
HA082375U003
Page 339 Issue 33 August 2019
IO FUNCTION BLOCKS AI_UIO
Delay Delay
TIME
HA082375U003
Issue 33 August 2019 Page 340
AI_UIO IO FUNCTION BLOCKS
SBreak. (UP/DOWN/DETECT/NONE). Only actions supported by the hardware are available. UP configures a
Drive high hardware action on a sensor break. DOWN configures a Drive low hardware action. DETECT configures the
action as determined by PVErrAct on a sensor break. NONE configures the take no hardware action instruction.
NOTE True Sensor Break on mA or V InType cannot be directly detected, as 0 (zero) mA or V is considered
a valid measurement on bi-polar inputs. Figure 64 is an example of the response to a measurement more than
10% below the LR_in value of the normal operating range. Selection of the SBreak UP/DOWN operation has
no effect on the I/O hardware, however, the resulting action of the block is derived from PVErrAct and will be
implemented when the I/O subsystem returns a measured value more than 10% below LR_in if SBreak is
configured to either UP or DOWN. Under these circumstances, a PVErr alarm is raised but Status.BrkDtctd is
not set.
PV
HR_in
(mA or V)
Normal Operation
LR_in
(mA or V) Permitted range exceeding
10% the normal operation range
below LR_in PVErrAct is applied if
SBreak set to UP/DOWN
PVErrAct. (UP/DOWN/HOLD). Specifies how PV is derived when a good reading is not available from the I/O
(that is, when it is not GOOD or CALIBRATING). UP sets PV to the top of the range defined in the following table when
there is an error. DOWN sets PV to the bottom of the range defined in the following table when there is an error. HOLD
causes PV to freeze when a break condition is detected (option only available if hardware supports break detect).
For Linear inputs, the PV error values cause a Range alarm when the PV Error Action is taken. For UCHAR and built in
characterisations, the PV error value is set at the limit of the table and therefore the Range alarm only operates on PV
error if HR/LR are at least 10% inside the limits of the characterisation. For maths characterisations, the range alarm is
never raised under PV error conditions.
Input Type Characterisation Range Alarm PV Error Action Value
TC User Available subject to config Y15/Y0
Built in thermocouple characterisations Available subject to config TC Table Range High/Low
mV/V/mA Linear Available HR+10%(HR-LR) / LR-10%(HR-LR)
Maths function Not available HR/LR
User Available subject to config Y15/Y0
Built in characterisation Available subject to config TC Table Range High/Low
RTD User Available subject to config Y15/Y0
Built in characterisation Available subject to config TC Table Range High/Low
Ohms Linear Available HR+10%(HR-LR) / LR-10%(HR-LR)
Maths function Not available HR/LR
User Available subject to config Y15/Y0
Pyrometer Linear Available HR+10%(HR-LR) / LR-10%(HR-LR)
User Available subject to config Y15/Y0
Potentiometer Linear Not available except on HR+10%(HR-LR) / LR-10%(HR-LR)
PVError action
Maths function Not available HR/LR
User Available subject to config Y15/Y0
Zirconia Linear Available HR+10%(HR-LR) / LR-10%(HR-LR)
User Available subject to config Y15/Y0
HA082375U003
Page 341 Issue 33 August 2019
IO FUNCTION BLOCKS AI_UIO
HA082375U003
Issue 33 August 2019 Page 342
AI_UIO IO FUNCTION BLOCKS
BrkDtctd. If TRUE, a break in the input is detected. Breaks can be detected before any bad readings have been
made if the first order filtering has been initialised.
AuxRngEr. If TRUE, the CJ_temp value exceeds the measurement circuit range.
ManPCal. If TRUE, it indicates the values of HR and LR have been set manually, and resets FALSE on
successful completion of an automated Pot calibration process via a connected LOOP_PID block. Only used when
ChType shows Pot, in all other input types it is always FALSE.
BadTask. If TRUE, the block is not on the same task as the parent module block (MOD_UIO).
HA082375U003
Page 343 Issue 33 August 2019
IO FUNCTION BLOCKS AO_UIO
Block function
MODE Invert
Auto
OP
Manual
External or Test Output
Out Range By Range By
Input
HR, LR HR_out,
-1
Track LR_out
Track
MODE MODE
External Simulate
Input Field
AO Analogue
+ Hardware
A - to - D Input
Input from CALIB Channel
AO_CALIB_IO
Trim block IO Subsystem
Please refer to Figure 65. The analogue output block converts ranged analogue variables (floating point numbers) from
a Strategy into voltage or current outputs (software selectable). The block provides Auto/Manual/Track control,
Inversion and Alarms.
Outputs from different instruments can be cross-coupled in redundant configurations to enhance the level of systems
integrity. In such configurations a ‘master’ output normally controls the plant; if the master instrument fails, a ‘slave’
automatically takes over. Please refer to the specific hardware documentation for details.
NOTE Not all fields are applicable to every channel type, and are therefore ‘greyed out’ in LINtools
configuration software for clarity.
Block parameters
Symbols used in Table 139 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 344
AO_UIO IO FUNCTION BLOCKS
Out. Analogue output in engineering units. Output from OP or Track or directly set by the User before inversion (if
specified) and de-ranging.
Track. Source of Out in Track mode.
HA082375U003
Page 345 Issue 33 August 2019
IO FUNCTION BLOCKS AO_UIO
HA082375U003
Issue 33 August 2019 Page 346
AO_UIO IO FUNCTION BLOCKS
BadType. If TRUE expected and fitted modules are not compatible, sets Alarms.Hardware TRUE.
Ranging. If TRUE, the Channel is currently initialising.
BadSetup. If TRUE, invalid Setup for the connected I/O module.
HwFlt. If TRUE, a fault has been detected in the I/O module, sets the Alarms.Hardware field TRUE.
NotAuto. If TRUE, the I/O module is not operating in AUTO mode, sets the Alarms.NotAuto TRUE.
UsrCalib. If TRUE, the user re-calibration constants are in use, FALSE if factory calibration constants are in
use.
CalEr. If TRUE, corrupt calibration data has been detected.
FaultCct. If TRUE, an open / short circuit has been detected, sets the Alarms.CctFault field TRUE.
HiClip. If TRUE, AO exceeds the range of the hardware and has been clipped at the high end of the hardware
range.
NOTE This applies to the range which the hardware is operating, not the LR_out - HR_out range.
LoClip. If TRUE, AO exceeds the range of the hardware and has been clipped at the low end of the hardware
range.
NOTE This applies to the range which the hardware is operating, not the LR_out - HR_out range.
OvrDrive. If TRUE, AO exceeds the range of the hardware, sets Alarms.OvrDrive TRUE. Used in a redundant
Strategy.
BadDmnd. If TRUE, a non-numeric internal (to the block) or external (OP parameter, for example) demand
signal has been encountered.
BadTask. If TRUE, the block is not on the same task as the parent module block (MOD_UIO).
HA082375U003
Page 347 Issue 33 August 2019
IO FUNCTION BLOCKS CALIB_UIO
Block function
This block is used to calibrate analogue input and output channels on modules that support user calibration. A database
is created that contains the AI_UIO or AO_UIO block associated with the I/O module to be calibrated, plus an
CALIB_UIO block. The calibration block effectively ‘attaches’ itself to the named AI_UIO or AO_UIO block, forces it
into CALIB mode, then works through it to calibrate the specified I/O channel. Via its Action field(s), the calibration
block displays one of a sequence of instructions for the operator to perform, who then sets the State.CONTINUE field
when ready to move on to the next instruction.
Details of how to calibrate analogue modules are given in the Calibration procedures section.
Block parameters
Symbols used in Table 140 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 348
CALIB_UIO IO FUNCTION BLOCKS
Calibrating an output. This specifies the nominal output value produced when calibrating the current
calibration point, e.g. the T2550 AO2 module has two calibration points for each range as follows.
CalValue Low CalValue High
RangeNo OutType LowLim HiLim Units point point
1 Volts -500.0 10500.0 mV 1000.0 9000.0
2 mA -0.1 20.5 mA 2.0 18.0
HA082375U003
Page 349 Issue 33 August 2019
IO FUNCTION BLOCKS CALIB_UIO
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Node. Specifies the LIN node number of the base where the module is fitted in hex format.
NOTE Associated channel blocks will be orphaned if the Node number changes.
Type. (Input/Output) Specifies whether the channel to be calibrated is an input or an output channel.
SiteNo. Specifies the position on the base of the I/O module whose analogue input or output is being calibrated. The
SiteNo cannot be configured if the Task parameter is at its default value of zero.
Channel. Specifies the number (1 - 4) of the analogue channel being calibrated. Not all channels can be calibrated,
for example the AI4 module, only channels 1 and 3 can be calibrated, as channels 1, 2 and 3, 4 share the same calibration
data.
RangeNo. (Menu derived from the attached analogue block) This field reflects which one of the specified channel’s
hardware ranges is currently being calibrated. The initial value is derived from the OutType or InType of the analogue
block to which it is attached. Each separate I/O module type that can be calibrated has a value of RangeNo corresponding
to the lowest range of that type. If the I/O module type has more than one range, the higher ranges can be selected by
increasing the value of RangeNo.
LowLim. Reports the low limit of the currently selected calibration range.
HighLim. Reports the high limit of the currently selected calibration range.
Units. Shows the units of measurement for the currently selected calibration range. It is not addressable via LINOPC.
Calibration procedures
Caution
Only authorised personnel using equipment of an approved standard should carry out hardware re-calibration.
To start the calibration process, set the SiteNo, Channel and Type fields to specify the I/O Module to be calibrated.
Assuming the parent block can be found, the calibration block attaches itself to it and then derives other fields as
applicable, LowLim, HighLim and CalValue. The Action field reports Done, and the State field reports WAITING. The
RangeNo must then be set to select the required range, as each type is calibrated as a separate operation.
NOTE Some modules, such as the T2550 AI3 and AI4 modules, only have a single range to be calibrated.
Analogue Input Calibration
This section tabulates each of the commands given by the block and the actions required of the operator in response.
Analogue input calibration sequence
Step Action field message Action required of operator, before entering CONTINUE
1 Enter VRef* If the module has a reference voltage that requires measuring and entering, measure and enter the
value of the Voltage Reference.
2 Apply Value Apply to the input the calibration point value as given in the CalValue field.
The State field will finally display WAITING, after first showing the PROCESSING indication.
3 Enter Value* If the module allows calibration of points that deviate from the nominal value, enter into the Value
field, the EXACT value applied.
4 Steps 2 and 3 are repeated for each calibration point supported by the connected hardware
5 Save Calib? At this point the parent block AI field shows the effect of the new calibration.
Select CONTINUE only if you want the calibration data updated in the I/O module. Stopping before
this point abandons this calibration, with no changes to the setup of the unit.
When all ranges are calibrated set State field to DISCONNECT allowing selection of a different
module or channel.
Start the calibration process by setting the State to CONTINUE. The Action field will read Apply Value or Enter VRef
while the CalValue field shows the low calibration point.
NOTE. *, Steps ignored if not applicable for the type of input module being calibrated.
HA082375U003
Issue 33 August 2019 Page 350
CALIB_UIO IO FUNCTION BLOCKS
This section tabulates each of the commands given by the block and the actions required of the operator in response.
Analogue output calibration sequence
Start the calibration process by setting the State to CONTINUE. The Action field will read Supplying Value while the
CalValue field shows the low calibration point.
Restore Factory Calibration
Step Action field message Action required of operator, before entering CONTINUE
1 Sure? Select CONTINUE only if you want the calibration data for all ranges on the seleced
channel to be restored to the factory settings.
HA082375U003
Page 351 Issue 33 August 2019
IO FUNCTION BLOCKS DI_UIO
Block function
Manual/
Test/Sim
SIMULATE Invert Input AlmWhen
Manual/Test/Sim Alarms
DI
Field -1 Auto
DeBounce In -1 NotIn
Digital Mode
Filter
Input Mode
Count
InActStr
InStr
ActStr
SIMULATE
Please refer to Figure 66. This block allows digital signals to be input to the Strategy, and provides Auto/Manual control,
inversion, and debounce. The input can be configured as either contact or voltage sensing.
NOTE Not all fields are applicable to every channel type, and are therefore ‘greyed out’ in LINtools
configuration software for clarity.
Block parameters
Symbols used in Table 143 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 352
DI_UIO IO FUNCTION BLOCKS
HA082375U003
Page 353 Issue 33 August 2019
IO FUNCTION BLOCKS DI_UIO
SiteNo. Specifies the position on the Base Unit where the I/O module corresponding to this block is located. The
Node and SiteNo identify the MOD_UIO block to which this channel block applies. The channel block must be allocated
to the same task as its associated MOD_UIO block. An invalid SiteNo sets the Status.Missing bit.
Channel. Defines the channel number within the I/O module specified by the SiteNo parameter, to which this DI_UIO
block is attached. The number of channels available depends on the I/O module type. An invalid Channel sets the
Status.BadType bit.
DI. Debounced input state (Plant signal) as a boolean, wireable to the Strategy. In the event of a module failure, this
field sets False.
Thresh. Threshold Voltage. Defines threshold for voltage input option. Any values exceeding the I/O Range are
clipped to the limits of the target hardware.
Debounce. Debounce time, in seconds. This is the minimum time a change in the digital input signal must persist
before the In parameter is allowed to switch to the new state. The filtering action of Debounce is shown in Figure 66.
This value can be changed to reflect the actual debounce time if the module cannot achieve the requested time.
Count. Number of low to high transitions on the input.
Options. Bitfield selecting a variety of signal-processing options. The following information is given in addition to
the summary in Table 143.
Invert. If TRUE, this has the effect of inverting the input signal, i.e. In is the inverse DI.
Status. Bitfield indicating general comms./hardware error conditions. Please refer to Table 143 for details.
Missing. If TRUE, the module block is missing or assigned to an unsupported task.
BadType. If TRUE expected and fitted modules are not compatible, sets Alarms.Hardware TRUE.
Ranging. If TRUE, the Channel is currently initialising.
BadSetup. If TRUE, an invalid Setup for the connected I/O module.
HwFlt. If TRUE, a fault has been detected in the I/O module, sets Alarms.Hardware TRUE.
NotAuto. If TRUE, the I/O module is not operating in AUTO mode, sets Alarms.NotAuto TRUE.
GoneTrue. If TRUE, the Input state, In, has changed from FALSE to TRUE.
NOTE Not evaluated until a complete cycle after the first successful reading from the I/O subsystem.
GoneFals. If TRUE, the Input state, In, has changed from TRUE to FALSE.
NOTE Not evaluated until a complete cycle after the first successful reading from the I/O subsystem.
PulsTrue/PulsFals. If TRUE, a rising or falling edge was detected in the last task cycle.
NOTE The following table shows how GoneTrue, GoneFals, PulsTrue, PulsFals are derived.
In GoneTrue GoneFals PulsTrue PulsFals
T T F T F
F F F T T
F F F F F
F F T F T
T F F T T
T F F F F
BadTask. If TRUE, the block is not on the same task as the parent module block (MOD_UIO).
HA082375U003
Issue 33 August 2019 Page 354
DO_UIO IO FUNCTION BLOCKS
Block function
Simulate
ReadBack
Mode -1
Manual
External or Test Invert Mode
Input
Auto
OP Out Digital
DO Output
-1 Channel
Track
Track n
Simulate
ActStr External
OutStr Input
InActStr
Please refer to the schematic in Figure 67, illustrating the digital output channels. The Digital output block transfers a
logic signal to a digital output channel. The block provides Auto/Manual/Track control, inversion and discrepancy
checking of output feedback.
NOTE Not all fields are applicable to every channel type, and are therefore ‘greyed out’ in LINtools
configuration software for clarity.
Block parameters
Symbols used in Table 144 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 355 Issue 33 August 2019
IO FUNCTION BLOCKS DO_UIO
HA082375U003
Issue 33 August 2019 Page 356
DO_UIO IO FUNCTION BLOCKS
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Node. Specifies the LIN node number in hex format of the base where the module is fitted. The Node and SiteNo
identify the MOD_UIO block to which this channel block applies. The channel block must be allocated to the same task
as its accompanying MOD_UIO block.
SiteNo. Specifies the position on the Base Unit where the I/O module corresponding to this block is located. The
Node and SiteNo identify the MOD_UIO block to which this channel block applies. The channel block must be allocated
to the same task as its associated MOD_UIO block. An invalid SiteNo sets the Status.Missing bit.
Channel. Defines the channel number within the I/O module specified by the SiteNo parameter, to which this
DO_UIO block is attached. The number of channels available depends on the I/O module type. An invalid Channel sets
the BadType status bit.
Pullup. Specifies the output voltage used for high logic status, if supported by the hardware.
Readback. Indicates feedback of low-level I/O module output state, if supported by the hardware. If the
Options.Invert field is TRUE the actual state is inverted before being displayed in Readback. If the output state does NOT
correspond to the Out field, the Alarms.CctFault sets TRUE, raising an alarm.
Options. Bitfield selecting a variety of signal-processing options. The following information is given in addition to
the summary in Table 144.
Invert. If TRUE, Out is inverted before transmission to the I/O subsystem, i.e. of inverting the output signal.
SelTrack. TRUE selects Track mode. Out is derived from the Track parameter.
Status. Bitfield indicating general comms./hardware error conditions., see Table 144 for details.
Missing. If TRUE, the module block is missing or assigned to an unsupported task.
BadType. If TRUE expected and fitted modules are not compatible, sets Alarms.Hardware TRUE.
Ranging. If TRUE, the Channel is currently initialising.
BadSetup. If TRUE, an invalid Setup for the connected I/O module.
HwFlt. If TRUE, the a fault has been detected in the I/O module, sets Alarms.Hardware TRUE.
NotAuto. If TRUE, the I/O module is not operating in AUTO mode, sets Alarms.NotAuto TRUE.
BadTask. If TRUE, the block is not on the same task as the parent module block (MOD_UIO).
HA082375U003
Page 357 Issue 33 August 2019
IO FUNCTION BLOCKS TPO_UIO
-1
MinOnT
Mode
Range by
0, 100% TPO
Simulate
External
Input
Please refer to the schematic in Figure 68, illustrating one of the eight digital channels. The Digital output block transfers
one logic signal to a digital output channel. The block provides Auto/Manual/Track control, inversion and discrepancy
checking of output feedback.
Block parameters
Symbols used in Table 145 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 358
TPO_UIO IO FUNCTION BLOCKS
MinOnT. The Minimum On / Off Time in seconds. It defines the minimum duration of the On and OFF pulse and is
used to minimise the frequency of the switch on and switch off. This value determines how accurately a device can be
positioned. The shorter the time, the more precise the control. However, if the time is set too short, process noise will
cause an excessively busy valve.
CycleT. The cycle time of the output in seconds.
NOTE Only offered if comms failure detection is supported by the I/O Module.
Out. The status (before inversion) of the field output connection. Sourced from OP, TRACK or directly set by user
depending on current operating mode.
HA082375U003
Page 359 Issue 33 August 2019
IO FUNCTION BLOCKS TPO_UIO
HA082375U003
Issue 33 August 2019 Page 360
FI_UIO IO FUNCTION BLOCKS
Block function
PV
Frequency
Engineering
Range by
Filter Range by AUTO
HR_In,
HR, LR
LR_In
+
HiHi
–
MAGNETIC Hi
Frequency CutOff Alarms
Input Lo
InType
LoLo
Magnetic
OutRange
Counter/ Frequency
Buffer
Pulses
mA/Volts Manual Input
UpCount InputOff
Please refer to the schematic in Figure 69. The Frequency Input (Universal) block will receive and display frequency
and count value from the I/O subsytem. Magnetic, mA or Voltage signals are automatically requested when the
appropriate option is selected from the InType field. Input pulses are processed and output in two distinct and independent
ways: as an analogue frequency value (PV), and also as an analogue scaled pulse count (Count). These processes are
shown in the upper and lower parts of the schematic, respectively.
Frequency value. The frequency pulses are first-order filtered, then converted to engineering units via the HR_in/
LR_in and HR/LR ranging parameters. This analogue frequency value forms the PV parameter. A Default value is
automatically substituted if the calculated value falls below the threshold value held in the CutOff parameter.
Scaled pulse count. The pulse count part of the block can be configured (or re-configured at any time) as either
an up- or a down-counter. With Control.UpCount set TRUE, at every block update the number of pulses is multiplied
by the value entered in Scale, and the result added to the Count register. When Count exceeds the ‘end value’ specified
by the SetCount parameter, it is returned to a ‘start value’ equal to Count - SetCount, an Overflow flag is latched on, and
a Carry parameter is set (until the next block update) to allow cascading of counters. With Control.UpCount set FALSE,
the scaled pulses are subtracted from Count until it falls below its ‘end value’, this time equal to zero. Count is then
returned to its ‘start value’, Count + SetCount, and the Overflow and Carry parameters are set as before.
Initialise (Control.Init) and overflow flag reset (Control.ClearOv) inputs are provided, as well as two forms of disable
function: Control.Disable, which stops the count after it has reached an ‘end value’, and Control.InputOff, which acts
immediately.
HA082375U003
Page 361 Issue 33 August 2019
IO FUNCTION BLOCKS FI_UIO
Block parameters
Symbols used in Table 146 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
Parameter Function Units Status
MODE Operating mode Menu
Fallback Fallback operating mode Menu
PV Processed input Eng1
HR, LR High & low range for PV Eng1
HiHi, Hi High & High high absolute alarm limits Eng1
Lo, LoLo Low & Low low absolute alarm limits Eng1
Hyst Hysteresis Bandwidth %
Filter First order filter time constant Secs
UserChar User characterisation Block name
CutOff PV low threshold Eng1
Default PV default value (PV < CutOff) Eng1
Count Scaled pulse count Eng2
Carry Carry flag T/F
Overflow Overflow flag T/F
SetCount Start/End count value Eng2
Scale Pulse/Frequency scale factor
Control Bitfield
Init Counter initialise T/F
Disable Stop count at end value T/F
Clear0v Overflow flag clear T/F
UpCount Up/down count select T/F
InputOff Halt count immediately T/F
AlmOnTim Alarm ON time delay Secs Ø Ø Ø Ø Ø Ø Ø Ø
AlmOfTim Alarm OFF time delay Secs
Alarms
Software Block data sumcheck error/network failure T/F
Hardware Fault with I/O hardware T/F
HiHi In high high alarm T/F
Hi In high alarm T/F
Lo In low alarm T/F
LoLo In low low alarm T/F
OutRange PV outside LR-HR range (>10%) T/F
CutOff Measured frequency below CutOff Value T/F
CctFault Volt-free contact open or short circuit T/F
CharErr Characterisation table error, or limits exceeded T/F
TaskRate Actual Task rate slower than time permitted by Instrument T/F
NotAuto TRUE if not in normal operation T/F
ModBlock Module block error T/F
Combined OR-ing of all Alarms bits T/F
Node LIN Node address of the base unit Hex
SiteNo Module’s position on the base unit Integer
Channel Specifies channel number within I/O module (1-n) Integer
InType Specifies input type Menu
HR_in, LR_in Frequency I/P high & low range Hz
FI Unprocessed frequency input Hz
Thresh Trigger threshold mA/Off/V
Burden Burden resistor value (Units are InType dependant) Ohms
Debounce Debounce filter select for Logic I/P mS
PSU Sensor power supply voltage Volts
Options (ABC)D hex
ScaleUp If TRUE Scale is a multiplier, FALSE = divisor T/F 1
SBreak Sensor break enable T/F 2
ShortCct Short circuit detect enable T/F 4
D
8
Status ABCD hex
Missing No valid I/O block found T/F
1
BadType Incorrect module type fitted T/F 2
Ranging Channel initialising T/F 4
D ✍
BadSetup Hardware capabilities exceeded T/F 8 ✍
Continued...
HA082375U003
Issue 33 August 2019 Page 362
FI_UIO IO FUNCTION BLOCKS
NOTE that Scale is applied to FI before the HR_in/LR_in to HR/LR scaling. If Scale is set to 1 then HR_in/
LR_in will be in Hz, otherwise they will be in scaled units per second, for example, litres per second (l/s),
revolutions per second (rev/s), and so on.
HiHi, Hi, Lo, LoLo. Absolute alarm levels defining when the corresponding alarms trip, with user configurable
hysteresis (Hyst) in all modes.
Hyst. Hysteresis bandwidth value, applied inside all alarm levels.
Filter. Time constant (seconds) of a simple first-order filter applied to the measured frequency value (FI/PV), to
remove noise from the signal.
UserChar. Specifies the name of a UCHAR block defining a 16-point (x,y) custom linearisation/characterisation table
to be applied to FI.
NOTE that Scale is applied to FI before user characterisation is applied. If Scale is set to 1 then the input to
the characterisation will be in Hz, otherwise they will be in scaled units per second, for example, litres per
second (l/s), revolutions per second (rev/s), and so on.
CutOff. Low threshold value for PV. If PV falls below CutOff, PV automatically adopts the value specified by the
Default parameter and the Status.CutOff is set TRUE.
Default. Default value of PV, automatically adopted if PV falls below the value specified by the CutOff parameter.
HA082375U003
Page 363 Issue 33 August 2019
IO FUNCTION BLOCKS FI_UIO
Count. Scaled counter output. Relates to the number of pulses input to the block, multiplied (or divided) by the Scale
parameter. Count can increment or decrement with pulses, depending on the Control.UpCount parameter, and
automatically resets to a ‘start value’ after reaching an ‘end value’, as specified by the SetCount parameter.
Carry. Sets TRUE when the total in Count has reached its ‘end value’ (defined by Control.UpCount and SetCount),
and has then been reset to its defined ‘start value’. Carry automatically resets to FALSE in the following update cycle.
Initialising the block via Control.Init also resets Carry.
Overflow. Set TRUE when the counter has reached its ‘end value’ and has been reset to its ‘start value’. The Overflow
parameter is reset when Control.Init is TRUE, or if Control.Clear0v is TRUE.
SetCount. Defines ‘start values’ and ‘end values’ for the Count parameter. When the block is configured as an up-
counter (Control.UpCount TRUE) the ‘end value’ equals SetCount and the ‘start value’ equals Count – SetCount.
NOTE This ‘start value’ (Count - SetCount) does not necessarily equal zero, as the total in Count, increased
by the last batch of pulses collected in the buffer, usually exceeds SetCount when the reset is triggered. When
the block is configured as a down-counter (Control.UpCount set FALSE) the ‘end value’ equals zero and the
‘start value’ equals Count + SetCount.
Scale. Applied to the raw delta count and raw frequency measurement, FI. Specifies the value added to (or subtracted
from) Count for each pulse detected, e.g. with Control.UpCount set TRUE and Scale = 2, if 15 pulses are detected
between block updates and Option.ScaleUp set TRUE, then 30 is added to Count. If Option.ScaleUp set FALSE, 7 is
added to Count and 1 pulse is held over until the next block update.
FI is multiplied by Scale before ranging or linearisation if Option.ScaleUp is TRUE. If Option.ScaleUp is FALSE, then
FI is divided by Scale.
Control. Bitfield parameters can be connected to digital inputs from the strategy. These only apply to the counter
function, and have no effect on the measured frequency function.
Init. TRUE initialises the counter, i.e. resets Carry, Overflow, and Count, and will automatically reset to FALSE.
Disable. If TRUE the counter stops, but only when the Count total has reached its ‘end value’, then reset to its
‘start value’, and the Carry and Overflow parameters set TRUE. After that, input pulses are not added to Count,
until Disable is reset to FALSE.
NOTE Resetting Control.Disable does not reset the Overflow parameter.
Clear0v. A TRUE input resets the Overflow parameter, then automatically resets this bitfield FALSE.
UpCount. TRUE selects an up-counter function: scaled pulses add to the Count total. FALSE selects a down-
counter function: scaled pulses subtract from the Count total. The Count value is not re-initialised when
Control.UpCount is switched, so the counter function can be changed in mid-count, before an ‘end value’ is
reached.
InputOff. TRUE stops pulses altering the Count total immediately, unlike Control.Disable. Other Control
functions are unaffected (e.g. Control.Init).
AlmOnTim, AlmOfTim. Each time the block is processed the alarm conditions are evaluated. When the state of a
time-delayed alarm changes, the corresponding internal timer is loaded with the AlmOnTim if the state is now TRUE, or
with AlmOfTim if FALSE. There is an independent timer for each of the time-delayed alarms. When a timer reaches zero,
the state of the corresponding Alarms field is set or cleared.
The time-delayed alarms are HiHi, Hi, Lo, LoLo and OutRange.
NOTE If an alarm state changes continuously within the values specified in AlmOnTim and AlmOfTim, the
state of the reported alarm does not change.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Hardware. TRUE when the Status.HwFlt, Status.BadSetup or Status.BadTask bit is set TRUE, e.g. in the event
of a power interruption, incorrect module type, transmitter PSU failure, circuit hardware fault, etc.
HiHi, Hi, Lo, LoLo. Set TRUE by parameters HiHi, Hi, Lo, and LoLo, respectively. The alarms do not clear
until PV has returned within these levels by more than the hysteresis value.
HA082375U003
Issue 33 August 2019 Page 364
FI_UIO IO FUNCTION BLOCKS
OutRange. TRUE when PV exceeds a value of 10% above or below HR or LR respectively. The alarm does not
clear until PV has returned within these levels by more than the hysteresis value.
CutOff. TRUE when the measured frequency falls below value in CutOff parameter. This alarm has 0.5%
hysteresis.
CctFault. Circuit fault. TRUE when the module detects an open circuit (on current outputs), or a short circuit
(on voltage outputs).
CharErr. The UChar block specified in the UserChar field was not detected or the input exceeds the range of
this table.
TaskRate. TRUE if a Task Rate exceeds the time permitted by the I/O Subsystem, e.g. T2550/T2750 is 30
seconds. If this time update rate is not achieved then counts may be lost.
NotAuto. TRUE if operating in MANUAL, TEST, or SIMULATE mode.
ModBlock. TRUE if there is no corresponding MOD_UIO block.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Node. Specifies the LIN node number in hex format of the base unit where the module is fitted. The Node and SiteNo
identify the MOD_UIO block to which this channel block applies. The channel block must be allocated to the same task
as its’ associated MOD_UIO block.
SiteNo. Specifies the position on the Base Unit where the I/O module corresponding to this block is located. The
Node and SiteNo identify the MOD_UIO block to which this channel block applies. The channel block must be allocated
to the same task as its associated MOD_UIO block. An invalid SiteNo sets the Status.Missing bit.
Channel. Defines the channel number within the I/O module specified by the SiteNo parameter, to which this block
is attached. The number of channels available depends on the Base Unit. An invalid Channel sets the Status.BadType bit.
InType. (Off/Magnetic/mA/Volts). Specifies the type of input connected to the I/O module associated with this block.
Defines the input signal type and conditioning path. Only the options supported by the hardware are available. As InType
changes, the appropriate electrical units are defined for Thresh.
HR_in, LR_in. HR_in and LR_in define two points on the input that map to points HR and LR, respectively, on the
engineering units scale (PV). HR_in/LR_in to HR/LR scaling is not applied if UserChar is defined. Note that Scale is
applied to FI before the HR_in/LR_in to HR/LR scaling. If Scale is set to 1, then HR_in/LR_in will be in Hz, otherwise
they will be in scaled units per second, such as litres per second (l/s), revolutions per second (rev/s), and so on.
FI. The measured frequency in its raw state. FI is scaled by Scale in the direction defined by Option.ScaleUp then
HR_in/LR_in to HR/LR scaling applied to produce PV. If UserChar is defined then it is used instead of HR_in, LR_in to
HR, LR scaling. In this case, HR and LR are still used for the range alarm.
Thresh. Sets the trigger threshold, using the electrical units defined by the InType.
Burden. Sets the burden resistor value for InType = mA only. When the I/O subsystem supports user configurability,
this field selects the burden resistor value. Otherwise it displays the setting of the fitted burden resistor.
Debounce. (0/5/10/20/50ms) Debounce filter for mA/V inputs. Inhibits any apparent change on the input until it has
been stable for the specified time. Becuase the debounce is applied to rising and falling edges, the maximum square wave
frequency which cna be measured is 1/(2 x debounce). For example, 100Hz for a Debounce of 5ms.
Caution
The Alarms.OverRange may not trigger when debounce inhibits a signal. Control loops based on PV should
NOT apply Debounce without provision for protecting against the consequences of the measured frequency
dropping to 0 due to the debounce.
PSU. Voltage select parameter for the programmable power supply, allowing it to be used with current preamplifiers,
proximity detectors, and volt-free contacts. The PSU can supply 8, 12 or 24V. If any other value is written then the field
will snap to the closest of these values.
NOTE Only the T2550 FI2 module supports 8V, 12V and 24V.
HA082375U003
Page 365 Issue 33 August 2019
IO FUNCTION BLOCKS FI_UIO
Options. Bitfield selecting a variety of signal-processing options. The following information is given in addition to
the summary in Table 146.
ScaleUp. If TRUE, Scale is a multiplier, applying to both counter and measured frequency functions. If FALSE,
Scale is a divisor.
SBreak. If TRUE, sensor break detection is enabled.
SCct. If TRUE, short circuit detection is enabled.
Status. Bitfield indicating general comms./hardware error conditions. Please refer to Table 146 for details.
Missing. If TRUE, the module block is missing or assigned to an unsupported task.
BadType. If TRUE expected and fitted modules are not compatible, sets Alarms.Hardware TRUE.
Ranging. If TRUE, the Channel is currently initialising.
BadSetup. If TRUE, an invalid Setup for the connected I/O module is detected, e.g. if the user configured input
range exceeds the instrument input range.
HwFlt. If TRUE, a fault is detected in the I/O module, sets Alarms.Hardware TRUE.
NotAuto. If TRUE, the I/O module is not operating in AUTO mode, sets Alarms.NotAuto TRUE.
OverRng, UnderRng. If TRUE, the input value is not measurable by the hardware, sets Alarms.OutRange
TRUE.
OpenCct, ShortCct. If TRUE, a logic sensor open circuit or short circuit is detected, respectively, sets
Alarms.CctFault TRUE.
BadHwSet. If TRUE, the hardware configuration does not correspond to the requested configuration, defined
in the block, i.e. a burden resistor is fitted (InType = mA), but the block is configured as InType = mV. This will set
Alarms.Hardware TRUE when asserted.
CutOff. If TRUE, the measured frequency falls below the value specified in CutOff.
BadTask. If TRUE, the block is not on the same task as the parent module block (MOD_UIO).
HA082375U003
Issue 33 August 2019 Page 366
FI_UIO IO FUNCTION BLOCKS
HR_in=10 (rev/s)
LR_in=0 (rev/s)
Hz Rev/s RPM
FI (Hz) /49 PV (rpm)
Hz
Plant input Scale=49 HR=600 (rpm)
(49 pulses per Input
revolution) LR=0 (rpm)
ScaleUp
Pulses =FALSE
Tooth Rev
pulses pulses Rev
/49 Counter Count (rev)
HR_in=5 (cans/s)
LR_in=0 (cans/s)
Hz
Crate Can
pulses pulses Cans
x24 Counter Count (cans)
HA082375U003
Page 367 Issue 33 August 2019
IO FUNCTION BLOCKS FI_UIO
HR_in=2.528 (l/s)
LR_in=0 (l/s)
Hz litre/s litre/hour
FI (Hz) x2 PV (litre/hour)
Hz
Plant input (0- Scale=2 HR=9100 (l/hour)
5.056 Hz = 0-9100 Input
litres/hour, ie,
1 pulse=0.5 litre) LR=0 (l/hour)
ScaleUp
Pulses =TRUE
litre
pulses pulses litres
x2 Counter Count (litres)
HA082375U003
Issue 33 August 2019 Page 368
MOD_DI_UIO IO FUNCTION BLOCKS
Block function
Manual
SIMULATE Invert Input
Manual
Field DI In -1 NotIn
DeBounce
Digital
Filter
Input -1 Auto
Mode
Mode
Please refer to Figure 73, showing a single channel only. This block allows upto 16 (sixteen) digital signals to be input
to the strategy, and provides Auto/Manual control, inversion, and debounce. The input can be configured as either contact
or voltage sensing.
Block parameters
Symbols used in Table 147 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 369 Issue 33 August 2019
IO FUNCTION BLOCKS MOD_DI_UIO
HA082375U003
Issue 33 August 2019 Page 370
MOD_DI_UIO IO FUNCTION BLOCKS
Chan1 to Chan16. Each bit represents the control for a single input plant signal. Any bit set TRUE, causes
the corresponding In.Chanxx to show the inverse of the associated DI.Chanxx, i.e. In is the inverse DI.
In. Input state, wireable to the Strategy.
Chan1 to Chan16. Each bit represents a single input. In MANUAL, TEST and SIMULATE mode, individual
bits can be written to and wired into. In AUTO, individual bits can only be wired out of. This shows the inverse of
the corresponding DI.Chanxx if the corresponding Invert.Chanxx is set TRUE.
NotIn. The inverse of In, above.
Chan1 to Chan16. Each bit represents the inverse of the corresponding single input, In.Chanxx.
Thresh. Threshold Voltage. Defines threshold for voltage input option. Any values exceeding the I/O Range are
clipped to the limits of the target hardware.
Debounce. Debounce time, in seconds. This is the minimum time a change in the digital input signal must persist
before the In.Chanxx parameter is allowed to switch to the new state.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Hardware. A hardware alarm is generated when the Status.HwFlt, or Status.BadTask bit is set TRUE, e.g. in
the event of a fault in the I/O hardware.
NotAuto. TRUE if operating in MANUAL, TEST, or SIMULATE mode.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Expect. (None/DI4/DI6_MV/DI6_HV/DI8_LG/DI8_LGv2/DI8_CO/DI8_COv2). This is the Module Type which is
expected to be fitted at the specified Node and SiteNo. The type of available channel blocks and the block’s allocated
task are decided on selection of the Module Type. A Module block can be allocated to any task, but the Status.BadTask
is set TRUE, if allocated to an unsychronised task.
Actual. (Unknown/None/AI2/AI3/AI4/AO2/DI4/DI6_MV/DI6_HV/DI8_LG/DI8_LGv2/DI8_CO/DI8_COv2/
DO4_LG/DO4_LGv2/DO4_24/DO4_24v2/DO8/RLY4/RLY4v2/FI2/ZI). This is the actual Module Type fitted at the
specified Node and SiteNo. Unknown indicates the I/O Module is not compatible with the current I/O subsystem
configuration, e.g. when configuring a redundant T2550 subsystem, Version 1 I/O Module hardware is not compatible.
Version 2 I/O Module hardware must be fitted in a redundant subsystem, where appropriate.
Version. The version number of the module fitted at the selected SiteNo. When used in conjuction with Actual, this
will assist with diagnosing module incompatibilities.
HwFlt. Hardware fault detected.
Chan1 to Chan16. Each bit represents a single input. If TRUE, a fault has been detected in the I/O module
communicating via the configured channel, sets Alarms.Hardware TRUE.
GoneTrue/GoneFals. Shows corresponding In.Chanxx has changed.
Chan1 to Chan16. Each bit represents a single input. If TRUE, the Input state, In, has changed from FALSE
to TRUE or TRUE to FALSE, respectively.
PulsTrue/PulsFals. Shows corresponding In.Chanxx has changed.
Chan1 to Chan16. Each bit represents a single input. If TRUE, a transition in the last task cycle is detected.
DIn DIn+1 PulsTrue PulsFals
F T T F
F F T F
F F F F
T F F T
T T F T
T T F F
HA082375U003
Page 371 Issue 33 August 2019
IO FUNCTION BLOCKS MOD_DI_UIO
BadType. If TRUE expected and fitted modules are not compatible, sets Alarms.Hardware TRUE.
BadSite. If TRUE, an invalid SiteNo has been entered e.g. SiteNo equals 16, but Model in the header block
shows an 8-way base unit.
BadTask. If TRUE, the block is operating on a non-I/O task.
Ranging. If TRUE, the channel is currently initialising.
BadSetup. If TRUE, an invalid setup for the connected I/O module.
NotAuto. If TRUE, the I/O module is not operating in AUTO mode, sets Alarms.NotAuto TRUE.
HA082375U003
Issue 33 August 2019 Page 372
MOD_DO_UIO IO FUNCTION BLOCKS
Block function
Mode
Invert.Chanxx Mode
Manual
External or Test
Input
Out.Chanxx Digital
OP.Chanxx
DO.Chanxx Output
Auto -1 Channel
Simulate
n
External
Input
Please refer to Figure 74, illustrating a single digital output channel. The Digital output block transfers upto 16 (sixteen)
logic signals to digital output channels. The block provides Auto/Manual/Track control, and inversion.
Block parameters
Symbols used in Table 148 are explained in Table 1. Additional parameter information is given in the Block
specification menu section following.
Parameter Function Units Status
Node LIN Node address of the base unit Hex
SiteNo Module’s position on the base unit Integer
Mode Current operating mode Menu
FallBack Fallback operating mode Menu
ChanMask Channel available ABCD hex
Chan1
to TRUE, if channel is available T/F
Chan16
OP Output state from Strategy ABCD hex
Chan1
to TRUE, if channel is used T/F
Chan16
Out Channel output state (before inversion) ABCD hex
Chan1
to Output state of channel T/F
Chan16
Invert Invert channel Input signal ABCD hex
Chan1
to TRUE, inverts Input signal T/F
Chan16
DO Plant output signal ABCD hex
Chan1
to TRUE, if channel is used T/F
Chan16
Alarms
Software Block RAM data sumcheck error T/F
Hardware I/O module failure or transmitter PSU faults T/F
NotAuto Block not in normal operation T/F
Combined Logical OR of all Alarm bits T/F
Expect Requested operating module type Menu
Actual Actual Module fitted Menu
Version Actual Module Version fitted
HwFlt Fault in I/O module (ABC)D hex
Chan1
to I/O Module failure T/F
Chan16
Continued...
HA082375U003
Page 373 Issue 33 August 2019
IO FUNCTION BLOCKS MOD_DO_UIO
HA082375U003
Issue 33 August 2019 Page 374
MOD_DO_UIO IO FUNCTION BLOCKS
HA082375U003
Page 375 Issue 33 August 2019
IO FUNCTION BLOCKS VP_UIO
Block function
TrackL TrackR
Backlash
SelTrack
OP Inertia
-1 Simulate VP
External Valve
Input Positioning Digital
ReadbakR Output
Simulate ‘raise’ (R)
Channel
Digital
ReadbakL Output
Simulate ‘lower’ (L)
Channel
Please refer to the schematic in Figure 75. This block is designed specifically for controlling the position of a valve via
two digital output channels from a single I/O module. The block represents two points from a single point in the plant/
system to effect the ‘raise’ (R) and ‘lower’ (L) valve position output.
NOTE Valve control can be used as an alternative to the standard PID control algorithm.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 376
VP_UIO IO FUNCTION BLOCKS
HA082375U003
Page 377 Issue 33 August 2019
IO FUNCTION BLOCKS VP_UIO
Combined. Asserted if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Node. Specifies the LIN node number in hex format of the base where the module is fitted. The Node and SiteNo
identify the MOD_UIO block to which this channel block applies. The channel block must be allocated to the same task
as its accompanying MOD_UIO block.
SiteNo. Specifies the position on the Base Unit where the I/O module corresponding to this block is located. The
Node and SiteNo identify the MOD_UIO block to which this channel block applies. The channel block must be allocated
to the same task as its associated MOD_UIO block. An invalid SiteNo sets the Status.Missing bit.
ChannelR, ChannelL. Defines the channel numbers within the I/O module specified by the SiteNo parameter, to
which this block is attached. The number of channels available depends on the I/O module type. ChannelL must be the
channel associated with ChannelR in the I/O subsystem. Setting one of these fields automatically sets the other. An
invalid ChannelR/ChannelL sets the Status.BadType bit TRUE.
VP. The demanded valve velocity currently sent to the module driver valve positioning algorithm. Can be written
directly in SIMULATE mode. In TRACK mode it displays -100%/0%/+100% to represent Lower/Rest/Raise,
otherwise it is copied from OP. The value copied from OP is negated if Options.Invert is TRUE. If the value exceeds +/
-100%, VP will be clipped and Status.Clipped set TRUE.
Pullup. Specifies the output voltage used for high logic status, if supported by the plant/system hardware.
ReadbakR, ReadbakL. Indicates feedback of low-level I/O module output state, if supported by the hardware. If
the Options.Invert field is TRUE the actual state is inverted before being displayed in ReadbakR, or ReadbakL as
appropriate.
Options. Bitfield selecting a variety of signal-processing options. The following information is given in addition to
the summary in Table 149.
Invert. If TRUE the value of OP negates when copied to VP. This reverses the allocation of the ‘raise’ and
‘lower’ digital outputs.
NOTE This is not applicable while operating in TRACK mode.
SelTrack. If TRUE the ‘raise’ and ‘lower’ digital outputs are driven directly from the TrackR and TrackL fields,
bypassing the valve positioning algorithm.
Status. Bitfield indicating general comms./hardware error conditions. The following information is given in addition
to the summary in Table 149.
Missing. If TRUE, the module block is missing or assigned to an unsupported task.
BadType. If TRUE expected and fitted modules are not compatible, sets Alarms.Hardware TRUE.
Ranging. If TRUE, the channels are currently initialising.
BadSetup. If TRUE, an invalid setup for the connected I/O module.
HwFlt. If TRUE, a fault has been detected in the I/O module, sets Alarms.Hardware TRUE.
NotAuto. If TRUE, the I/O module is not operating in AUTO mode, sets Alarms.NotAuto TRUE.
Clipped. If TRUE, the VP value has been clipped to be within the range -100% to + 100%.
BadDmnd. If TRUE, a non-numeric internal (to the block) or external (OP parameter, for example) demand
signal has been encountered.
BadTask. If TRUE, the block is not on the same task as the parent module block (MOD_UIO).
HA082375U003
Issue 33 August 2019 Page 378
LOGIC FUNCTION BLOCKS
HA082375U003
Page 379 Issue 33 August 2019
LOGIC FUNCTION BLOCKS PULSE
Block function
Width
ReTrig
Sense
TRUE
Rising Out
Monostable
In Pulse
-1 FALSE Generator
Falling
Block
Retriggering -1 Not_Out
During Pulse
Please refer to Figure 76. The PULSE block acts as a monostable pulse generator, producing a rectangular pulse when
triggered via the input. Rising or falling edges may be specified as the trigger (via the Sense parameter), and the output
is available in true and complementary form. The ReTrig parameter can be set to prevent input edges retriggering the
monostable during its ‘on’ period.
NOTE The maximum generated pulse length is dependant on the configured Task rate and instrument type,
i.e. 46 hours if the block is running on the 10ms Task and 21 days if the block is running on 110ms Task.
Figure 77 shows examples of how these parameters affect the output of pulses.
In
Out
Sense = RISING
ReTrig = FALSE
‘width’
Out
Sense = RISING
ReTrig = TRUE
‘width’
‘width’
Out
Sense = FALLING
ReTrig = TRUE
‘width’
‘width’
TIME
HA082375U003
Issue 32 May 2019 Page 380
PULSE LOGIC FUNCTION BLOCKS
Block parameters
Symbols used in Table 150 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 381 Issue 32 May 2019
LOGIC FUNCTION BLOCKS AND4_OR4_XOR4
Block function
In_1
In_2 AND4
OR4 Out
In_3 XOR4
In_4
NOT Not_Out
Please refer to the schematic in Figure 78, which applies to all three blocks.
Each block has four digital inputs and performs the corresponding Boolean function to generate the output, which is
available in both true (Out) and complementary (Not_Out) forms.
In the AND4 block, Out is TRUE only if all four inputs are TRUE. In the OR4 block, Out is TRUE only if at least one
of the inputs is TRUE. In the XOR4 block, Out is TRUE if, and only if, an odd number (1 or 3) of the inputs is TRUE.
In all other cases the Out parameter is FALSE.
Block parameters
Symbols used in Table 151 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 382
NOT LOGIC FUNCTION BLOCKS
Block function
In NOT Out
Please refer to Figure 79. The NOT block inverts a logic input, i.e. if In is TRUE, Out is FALSE; if In is FALSE , Out
is TRUE.
Block parameters
Symbols used in Table 152 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 383 Issue 33 August 2019
LOGIC FUNCTION BLOCKS LATCH
Block function
Preset
In
LATCH Out
Detect
Clock
Sense
NOT Not_Out
Reset
Please refer to Figure 80. The LATCH block provides a general purpose D-type flip-flop function, with a clock input
that can be set to operate the latch on rising, falling, or either edges (specified by the Sense parameter). The Clock input
sets Out equal to In, unless Preset or Reset are active. Preset forces Out to TRUE, overriding In. Reset forces Out to
FALSE, overriding both Preset and In. The truth table in Table 153 summarises the action of the block.
In Clock Preset Reset Out Not_Out
X X TRUE FALSE TRUE FALSE
X X X TRUE FALSE TRUE
FALSE á/â FALSE FALSE FALSE TRUE
TRUE á/â FALSE FALSE TRUE FALSE
Block parameters
Symbols used in Table 154 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 384
LATCH LOGIC FUNCTION BLOCKS
Preset. When Preset is TRUE, Out is forced to TRUE, and Clock and In are overridden. Preset is overridden by Reset.
Reset. When Reset is TRUE, Out is forced to FALSE, and all other inputs are overridden.
Sense. (FALLING/RISING/EITHER). Specifies the triggering edge the Clock input is to respond to. FALLING =
TRUE-to-FALSE transition; RISING = FALSE-to-TRUE transition; EITHER = both transitions.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Out. Output from latch function.
Not_Out. Equal to logical NOT Out. Complementary form of the block output.
HA082375U003
Page 385 Issue 33 August 2019
LOGIC FUNCTION BLOCKS COUNT
Block function
Disable
UpCount
TRUE Add to
TRUE integer
In Detect Not_Out OP
Count
Sense -1 register
FALSE
FALSE
ClearOv
Reset
Count to
Carry Overflow start
value
*
Init Compare
End Value
*UpCount = TRUE *
Start Value = 0 (1 after ‘Count’ reaches ‘end value’)
End Value = SetCount
UpCount = FALSE
Start Value = SetCount - 1 (after ‘Count’ reaches ‘end value’)
End Value = 0
Please refer to Figure 81. The COUNT block counts input pulses, either rising or falling edges (as specified by the Sense
parameter). Totals of up to 8 digits are held in the Count parameter as integers. The count total is also available as an
analogue output connection OP, with 7-digit floating point accuracy.
The counter can be configured (or re-configured at any time) as either an up- or a down-counter, via the UpCount
parameter. When configured as an up-counter, input pulses increment the total in Count until it reaches an ‘end value’
specified by the SetCount parameter. At the next pulse, Count is returned to a ‘start value’ of ‘1’, an Overflow flag is
latched on, and a Carry flag is temporarily set (usually for one more count) to allow cascading of counters. When
configured as a down-counter, input pulses decrement the Count total until it reaches its ‘end value’, this time equal to
zero. At the next pulse, Count is returned to 1 less than the ‘start value’, SetCount, and the Overflow and Carry flags are
set as before. This value is 1 less to ensure the correct number of pulses are counted.
NOTE Initialise, Disable and Overflow flags reset inputs are also provided.
The timing diagram below is the result of the following Count block configuration, SetCount = 5, Sense = Rising, and
Disable = False.
Count 0 1 2 3 4 5 1 2 3 2 1 0 4 35 1
In
UpCount
Carry
Overflow
ClearOv
Init
HA082375U003
Issue 33 August 2019 Page 386
COUNT LOGIC FUNCTION BLOCKS
Block parameters
Symbols used in Table 155 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 387 Issue 33 August 2019
LOGIC FUNCTION BLOCKS COUNT
Count. Counter value, in integer format. The value displayed has full 8-character integer resolution and can be linked
to graphics displays.
Carry. Sets TRUE when the total in Count has reached its ‘end value’ (defined by UpCount and SetCount), and then
been reset to its defined ‘start value’. When Count has moved away from its ‘start value’ (after one more input pulse),
Carry automatically resets to FALSE. Initialising the block via Init also resets Carry.
Overflow. Latches to TRUE when the counter has reached its ‘end value’ and been reset to its ‘start value’. The flag
is reset when Init is TRUE, or when ClearOv is TRUE.
HR_OP, LR_OP. High and low range for graphic objects linked to OP (Bar, Trend). HR_OP and LR_OP define the
100% and 0% displays, respectively.
Options.
CanDsable. Determines whether the disable feature operates. If TRUE, the disable feature operates normally.
If FALSE, the disable feature will only stop counting when Count is either equal to SetCount (when counting down)
or 0 (when counting up) - that is, the value that Count attains when Init is asserted. In this case, the disable feature is
effectively turned off because in normal operation, Count will never reach SetCount or 0 (refer to the Disable field)
due to the way the rollover operation works (resetting Count to SetCount-1 or 1).
HA082375U003
Issue 33 August 2019 Page 388
COMPARE LOGIC FUNCTION BLOCKS
Block function
Equ_Band
=
PV_1 = PV_2 Equal
NOT Not_EQ
PV_1
Hyst >
PV_2 PV_1 > PV_2 Greater
NOT Not_GT
<
PV_1 < PV_2 LessThan
NOT Not_LT
Please refer to Figure 83. The COMPARE block compares a pair of analogue inputs, performing three logical functions:
Equal To, Greater Than, and Less Than. Three pairs of outputs indicate the logical results of the comparisons in both true
and complementary form.
Hysteresis & Equal Bands. A user-set hysteresis band (Hyst) operates at each boundary, and an ‘equal band’
(Equ_Band) operates additionally in the Equal To function. These parameters act as ‘tolerance bands’ used in the
comparisons of the two inputs. Figure 84, Figure 85, and Figure 86 show how Hyst and Equ_Band are applied.
NOTE. In the Figures, the curves must be followed from left to right along the horizontal time axis. They are
not valid in the reverse direction.
PV_1 - PV_2
Hyst
Equ_Band
PV_1 = PV_2 EQUAL
Equ_Band
Hyst
Equal 1 = TRUE
0 = FALSE
HA082375U003
Page 389 Issue 33 August 2019
LOGIC FUNCTION BLOCKS COMPARE
PV_1 - PV_2
Greater 1 = TRUE
0 = FALSE
PV_1 - PV_2
Hyst
PV_1 = PV_2 EQUAL
LessThan 1 = TRUE
0 = FALSE
Block parameters
Symbols used in Table 156 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 390
COMPARE LOGIC FUNCTION BLOCKS
HR, LR. High and low range for graphic objects linked to PV_1 and PV_2 (Bar, Trend). HR and LR define the 100%
and 0% displays, respectively.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Equal. TRUE indicates that PV_1 and PV_2 are within the Equal band, subject to hysteresis.
Not_EQ. Logical NOT Equal. Complementary output form of Equal.
Greater. TRUE indicates that PV_1 > PV_2, subject to hysteresis.
Not_GT. Logical NOT Greater. Complementary output form of Greater.
LessThan. TRUE indicates that PV_1 < PV_2, subject to hysteresis.
Not_LT. Logical NOT LessThan. Complementary output form of LessThan.
HA082375U003
Page 391 Issue 33 August 2019
MATHS FUNCTION BLOCKS
HA082375U003
Issue 33 August 2019 Page 392
ADD2_SUB2_MUL2_DIV2 MATHS FUNCTION BLOCKS
PV_1
Scale A
PV_1 x K_1
K_1 ADD (A + B)
Limit by
SUBTRACT (A - B)
HL_OP OP
MULTIPLY (A x B)
PV_2 LL_OP
DIVIDE (A / B)
Scale B
PV_2 x K_2
K_2
Block function
Please refer to the schematic in Figure 87, which applies to all four blocks. Maths blocks carry out the basic arithmetic
functions on a pair of scaled analogue inputs. The resulting output OP is subjected to high and low limits.
Block parameters
The parameters are the same for all four blocks, listed together in Table 157. Symbols used in the table are explained in
Table 1. Additional parameter information is given in the Block specification menu section following.
HA082375U003
Page 393 Issue 33 August 2019
MATHS FUNCTION BLOCKS EXPR
Block function
EXPR
B Evaluate Limit by
Expression HL_OP, OP
C (A, B, C, D ) LL_OP
Please refer to Figure 88. The Expression block allows entry (via, e.g., an Eycon on-screen alphanumeric keyboard) of
an expression of up to 78 characters long, manipulating up to four input variables A, B, C, and D. The result is subjected
to high and low limits before being output as OP. Table 158 lists in descending priority order the mathematical operators
that can be used in the expression.
Evaluation order
The mathematical precedence is from left to right of an expression, then as follows:
( ) brackets - highest priority
– (negate), NOT (logical invert), standard function (e.g. TRUNC, FLOAT, etc.)
** (exponentiate)
* (multiply), / (divide), MOD (modulo)
+ (add), – (subtract)
=, <, >, <=, >=, <> (comparators)
AND (logical AND)
XOR (exclusive OR)
OR (logical OR) - lowest priority
For example, A * B + C / D is processed as (A * B) + (C / D), but A + B * C – D is processed as A + (B * C) - D.
HA082375U003
Issue 33 August 2019 Page 394
EXPR MATHS FUNCTION BLOCKS
Block parameters
Symbols used in Table 159 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 395 Issue 33 August 2019
MATHS FUNCTION BLOCKS EXPR
HA082375U003
Issue 33 August 2019 Page 396
ACTION MATHS FUNCTION BLOCKS
Block parameters
Symbols used in Table 160 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 397 Issue 33 August 2019
MATHS FUNCTION BLOCKS ACTION
TRUE
EN FALSE FALSE
QualTime
TIME
QualTime. Time value associated with the L, D, and E action qualifiers, with units specified by TimeBase. QualTime
specifies a running time or delay for the action, and operates during the period that the EN parameter is TRUE, as shown
in Figure 89.
TimeBase. (Secs/Mins/Hours) Specifies time units for the T and QualTime parameters.
HA082375U003
Issue 33 August 2019 Page 398
DIGACT MATHS FUNCTION BLOCKS
Block function
The DIGACT block allows a user-defined ‘action’, separately created in the LINtools Action configurator, to be run in
the control strategy. Please refer to the T500 LINtools Product Manual (Part no. HA 082 377 U999) for detailed
information on configuring Structured Text Actions.
NOTE. The DIGACT block template is stored in a sub-directory called DEVICES, accessible via SelDir in
the LINtools MATHS category menu.
The block provides sets of digital variables, individual and grouped (into 8-bit bytes and 16-bit words), that can be used
by the action, and fields specifying the action’s qualifier and associated qualifier time (where appropriate). A digital input
provides the means to enable the action, and the elapsed time since the action was enabled is available as an output.
Note that the DIGACT block is very similar to the ACTION block, described in the previous section, and has several
identical parameters.
Block parameters
Symbols used in Table 161 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 399 Issue 33 August 2019
MATHS FUNCTION BLOCKS DIGACT
HA082375U003
Issue 33 August 2019 Page 400
ACT_2A2W3T MATHS FUNCTION BLOCKS
Block parameters
Symbols used in Table 162 are explained in Table 1 of the LIN Block Reference Manual (Part no. HA 082 375 U003).
Additional parameter information is given in the Block specification menu section following.
HA082375U003
Page 401 Issue 33 August 2019
MATHS FUNCTION BLOCKS ACT_2A2W3T
TRUE
EN
FALSE
TRUE
TmrEnabl.DwnTmrn
FALSE
nn
DwnTmrn
TIME
DwnTmr1, DwnTmr2, DwnTmr3. DwnTmr1, DwnTmr2, and DwnTmr3, can be loaded with a value from the
Structured Text (ST) Action or from a Sequential Function Chart (SFC) Structured Text (ST) Action, User Screeen
Editor, etc.. These fields count down to 0 (zero) when loaded with a positive value. Individual enabling subfields,
TmrEnabl.DwnTmrn, allow these fields to run when set TRUE, but will stop when the corresponding
TmrEnabl.DwnTmrn is set FALSE.
TmrEnabl. Bitfield containing, DwnTmr1, DwnTmr2, and DwnTmr3, that are used to enable, set TRUE, or stop, set
FALSE, the corresponding Downtimer. DwnTmr1, DwnTmr2, and DwnTmr3 can only countdown when EN is set TRUE.
HA082375U003
Issue 33 August 2019 Page 402
OPERATOR FUNCTION BLOCKS
HA082375U003
Page 403 Issue 33 August 2019
OPERATOR FUNCTION BLOCKS PNL_CMD
Block function
The PNL_CMD block is used typically to force the Visual Supervisor panel to jump to a specified page. This may be a
user page (Id 1-999) or a built-in agent (Id > 999).
The block’s Action parameter includes the following options:
GOTO. Jump to the specified page.
DESCEND. ‘Descend’ to the specified page, with an ‘escape’ key allowing return to the original page.
ESCAPE. Undo a ‘descend’, or clear a popup window. (Equivalent to the ‘page up’ key).
Other actions are also available (see Block specification menu section below) which could be used, for example, to
construct rolling demonstrations.
Performing a user interface command
A particular sequence of parameter value changes must be followed for successful user interface interaction. The required
changes in the relevant PNL_CMD block can be carried out using a Sequence (SFC), a user action list, or by wired inputs
from the running control strategy.
A typical one-shot page-change, ensuring the new page is reached, could proceed as follows:
1. Set Option.Lock TRUE to suppress navigation driven directly from the panel itself, and also to suppress
timeouts.
2. Set Acquire TRUE to initiate acquisition of command of the user interface.
3. Wait for Acquired to become TRUE. This confirms that no other PNL_CMD function block is already in
command of the interface.
4. NOTE You can also make acquisition conditional on the user’s access level and/or status, via the Access
subfields.
5. Set Action to GoTo, and set Id to the appropriate value for the desired page.
6. Set Trigger from FALSE to TRUE, to trigger the selected action.
7. Wait for Triggerd to set, then (optionally) check for any alarms.
8. Reset Acquire and Trigger to relinquish command and prepare for further triggering.
In applications having only one PNL_CMD block and not requiring locking, it is simpler to leave the block permanently
in command (Acquire held TRUE), preconfigure Action and Id, and pulse Trigger TRUE then FALSE whenever the
action is required. Alternatively, you can leave Trigger TRUE and pulse Acquire to trigger the action.
Block parameters
Symbols used in Table 163 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 404
PNL_CMD OPERATOR FUNCTION BLOCKS
HA082375U003
Page 405 Issue 33 August 2019
OPERATOR FUNCTION BLOCKS PNL_CMD
PREV. Equivalent to the ‘page left’ key, when this causes a page change.
HOME. Jump to the home page.
ROOT. Jump to the root menu. Equivalent to the ‘root’ (menu) key.
Id. Id (identity number) of destination page or agent. User pages, that you build with the User Screen Editor, have Id
in the range 1-999; preconfigured Built-in Agents have Id >999. For Built-in Agents, there are some cases where
contextual information (e.g. block name, display mode) may be needed to fully specify the target page. (See the Context
and DispMode parameters, next.)
Context. Block context (where applicable). This block name field may further specify the destination page, in
addition to the selected screen Id.
Id Agent Context parameter value
1500 System View (Not applicable)
1501 Area View AREA blockname (Not currently applicable)
1502 Group View* GROUP blockname
1503 Point View Point to be displayed
HA082375U003
Issue 33 August 2019 Page 406
PNL_CMD OPERATOR FUNCTION BLOCKS
Access. Bitfield controlling user access to acquisition of the user interface. The following is given in addition to Table
163.
UserRef. If TRUE, acquisition is enabled only if the UserRef field value equals the ‘User Reference’ of the user
currently logged in. This condition must be met in addition to any access level limitations imposed by the other
Access subfields.
NOTE The Visual Supervisor has two security access systems, Standard Access and User ID Access. In the
User ID Access system, every user is assigned a (non-unique) ‘User Reference’ number. This is the number
referred to here.
Options. Bitfield controlling user interface navigation options. The following is given in addition to Table 163.
Lock. If TRUE when Acquire is also TRUE, Lock suppresses navigation driven directly from the panel itself, e.g.
via the root menu. It also suppresses panel timeouts, e.g. the timeout to the home page. There may be an additional
delay in acquisition in this case, because a few built-in pages also use locking (e.g. during cloning or upgrade.)
NOTE This option must be used with great care to avoid locking up the user interface irretrievably! Also
that Option.Lock is relevant only at the time of acquisition, toggling it subsequently has no effect.
HA082375U003
Page 407 Issue 33 August 2019
OPERATOR FUNCTION BLOCKS PNL_DICT
Block function
This block is an interface between the Eycon™ Visual Supervisor panel and the dictionary files. It provides a view to
the dictionaries and allows the ‘W’ (Writable Text) dictionary to be written to. The availability is this function allows
long text strings used in Batch data to be read and written to by a remote computer.
Block parameters
Symbols used in Table 167 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
Alarms. See page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Invalid. Asserted if invalid configuration of Dict and/or Index is detected. This could be caused if the defined
dictionary does not exist.
Combined. Asserted if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Text1 to Text16. Sixteen consecutive text string fields in dictionary starting at the number defined by Index. Text1
relates to the number defined in Index, Text2 to Text16 relate to the next text strings configured in the dictionary. If a
Textn field shows ‘’, no text exists in the defined dictionary. Each field supports 255 characters maximum per field.
HA082375U003
Issue 33 August 2019 Page 408
PNL_MSG OPERATOR FUNCTION BLOCKS
Block function
PNL_MSG blocks let you configure and queue messages that the application can present to the operator for viewing on
Visual Supervisor’s front panel. These messages can for example be used to prompt the operator for a particular response,
or simply to inform him/her of something that needs only an acknowledgement. The strategy itself can be configured to
respond to messages in the absence of operator responses. The block allows the strategy to record, and if necessary act
on, all operator responses.
Message setup & queueing. A message is set up via the block’s Title field, which specifies the message banner,
and the Body field, specifying the message contents, both as dictionary entries.
NOTE All text messages for this block are stored in a special message (‘M’) dictionary. A dictionary entry
value of ‘0’ is interpreted as ‘no text’. This does not prevent references to other dictionaries within an
associated ‘form’.
A TRUE input to Trigger adds the configured message to the message queue, where it remains ‘active’ and available for
operator viewing and response until automatically deleted after Timeout seconds have elapsed. (Timeout can be disabled
to allow the message to remain queued indefinitely.) The message is immediately deleted if the operator responds to it
by pressing a message ‘button’, or if the application itself responds automatically.
Messages are queued (by default) in creation-time order, with the oldest message first in the queue for the operator’s
attention. The Priority parameter can however be used to override this and move a message up the queue.
Operator buttons. A maximum of four operator ‘buttons’ can appear at the foot of the message. These are selected
by the Buttons parameter and include ‘OK’, ‘CANCEL’, ‘YES’, ‘NO’, etc. plus four free-format user-defined buttons
with dictionary-defined legends (allowing for multi-lingual applications). The Response parameter records which button
has been pressed by the operator, or if the application has responded automatically, which button(s) have been activated.
The SelfResp parameter specifies which button(s) will be activated by the application when triggered by a TRUE input
to the TrigSelf field.
Message context. Each message can be given a LIN function block ‘context’, via the Context parameter. This
allows the operator to view, and the application to use, the queued messages selectively, filtered by context, as an
alternative to globally. Note that other function blocks, e.g. the PNL_CMD block, may also use this context to filter
messages.
NOTE An application can have several PNL_MSG block running, each block being able to support one
active message in the message queue at one time.
Block parameters
Symbols used in Table 168 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 409 Issue 33 August 2019
OPERATOR FUNCTION BLOCKS PNL_MSG
HA082375U003
Issue 33 August 2019 Page 410
PNL_MSG OPERATOR FUNCTION BLOCKS
HA082375U003
Page 411 Issue 33 August 2019
OPERATOR FUNCTION BLOCKS PNL_MSG
Response. This read-only bitfield records operator (or automatic) message box responses. The corresponding bit(s)
set(s) TRUE when the operator presses a button, or when an automatic self-response is triggered by an input to TrigSelf.
The bits latch TRUE until the Trigger input is asserted, when all bits reset FALSE (and a new message is generated).
HA082375U003
Issue 33 August 2019 Page 412
PNL_DLG OPERATOR FUNCTION BLOCKS
Block function
PNL_DLG blocks let you configure and queue dialogues that the application forces the operator to view and respond to
on Visual Supervisor’s front panel. These dialogues can for example be used to prompt the operator for a particular
response, or simply to inform him/her of something that needs only an acknowledgement. The strategy itself can be
configured to respond to dialogues in the absence of operator responses. The block allows the strategy to record, and if
necessary act on, all operator responses.
Dialogue setup & queueing. A dialogue is set up via the block’s Title field, which specifies the dialogue banner,
and the Body field, specifying the dialogue contents, both as dictionary entries.
NOTE All text messages for this block are stored in a special message (‘M’) dictionary. A dictionary entry
value of ‘0’ is interpreted as ‘no text’. This does not prevent references to other dictionaries within an
associated ‘form’.
A TRUE input to Trigger adds the configured dialogue to the dialogue queue, where it remains ‘active’ and ready to
appear on the screen for the operator to respond to. The currently-displayed dialogue is immediately deleted if the
operator responds to it by pressing a dialogue ‘button’, or if the application itself responds automatically.
Dialogues are queued (by default) in creation-time order, with the oldest dialogue (if any) currently on display. The
Priority parameter can however be used to override this and move a dialogue up the queue. For dialogues of equal
priority, the oldest takes precedence. Unless the current dialogue is responded to by the operator (or automatically), no
other operator actions may be carried out. When a dialogue is cleared, the next dialogue in the queue (if one exists) pops
up.
Operator buttons. A maximum of four operator ‘buttons’ can appear at the foot of the dialogue. These are selected
by the Buttons parameter and include ‘OK’, ‘CANCEL’, ‘YES’, ‘NO’, etc. plus four free-format user-defined buttons
with dictionary-defined legends (allowing for multilingual applications). The Response parameter records which button
has been pressed by the operator, or if the application has responded automatically, which button(s) have been activated.
The SelfResp parameter specifies which button(s) will be activated by the application when triggered by a TRUE input
to the TrigSelf field.
NOTE An application can have several PNL_DLG block running, each block being able to support one
active dialogue in the dialogue queue at one time.
Block parameters
Symbols used in Table 169 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 413 Issue 33 August 2019
OPERATOR FUNCTION BLOCKS PNL_DLG
HA082375U003
Issue 33 August 2019 Page 414
PNL_DLG OPERATOR FUNCTION BLOCKS
HA082375U003
Page 415 Issue 33 August 2019
OPERATOR FUNCTION BLOCKS PNL_ACC
Block parameters
Symbols used in Table 170 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
Parameter Function Units Status
PanelId Id of panel (Default = 1. Not currently implemented) Integer
LogOn TRUE triggers logon (latching) T/F
LogOff TRUE triggers logoff (latching) T/F
ReqID Requested user ID (multi-user strategy) (2 - 8 chars.) Alphanumeric
ReqLevel Requested access level (standard strategy) Menu
Password Password for new user (displayed as “”) (0 - 8 chars.) Alphanumeric
Options Optional features (ABC)D hex
LOnHome Return to home page at logon T/F 1
LOffHome Return to home page at logoff T/F 2
T/F 4
D
T/F 8
Alarms
Software Block RAM data sumcheck error / network failure T/F
InvLogon Invalid logon attempted, e.g. incorrect password T/F
Conflict Logon rejected because of a conflict T/F
Combined OR-ing of all Alarms bits T/F
LoggedOn TRUE if logged on (level > LOCKED), else FALSE T/F
CurID Current user ID, or blank if logged off Alphanumeric
CurLevel Current access level name Menu
CurLvlNo Current access level number (1 - 5) Integer
CurRef Current user reference number (0 - 65535) Integer
CurAttr[1] Current user attributes ABCD hex
Sign TRUE = can sign T/F 1
Authorse TRUE = can authorise T/F 2
ViewOnly TRUE = View Only access T/F 4
D
MaxExpry TRUE = Password expiry period set to maximum T/F 8
AdmOnly[2] TRUE = edit Administrator access rights ONLY T/F 1
T/F 2
T/F 4
C
T/F 8
T/F 1
T/F 2
T/F 4
B
T/F 8
FTP[2] TRUE = can access FTP T/F 1
Remote[2] TRUE = can login to this database from a remote node T/F 2
A
T/F 4
T/F 8
CurAttr2[2] Additional User attributes (ABC)D hex
User1 T/F 1
User2 T/F 2
User3 T/F 4
D
User4 T/F 8
[1]Block parameters Applicable to Version 4. onwards. [2] Applicable to Version 5.0 onwards
Table 170 Block parameters
HA082375U003
Issue 33 August 2019 Page 416
PNL_ACC OPERATOR FUNCTION BLOCKS
CurLvlNo CurLevel
1 LOCKED
2 OPERATOR
3 COMMISSI(ON)
4 ENGINEER
5 ADMIN
HA082375U003
Page 417 Issue 33 August 2019
OPERATOR FUNCTION BLOCKS READER
Block function
The READER block allows the use of reader devices that support record-based input peripherals, e.g. barcode readers.
An input record from such a device is interpreted as follows:
1. A number (possibly 0) of prefix characters, of which the first may optionally be checked.
2. The record body, to which pattern-matching is applied.
3. A number (possibly 0) of suffix characters, of which the last may optionally be checked.
4. A terminator character, whose detection triggers the matching process.
Block parameters
Symbols used in Table 172 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 418
READER OPERATOR FUNCTION BLOCKS
LINE_LEN. A line in the file was too long (limit is 255 excluding CR and/or LF).
NEWLINE. File does not end with a newline (possibly indicating corruption).
MEMORY. File is too big for the memory allocated to it.
SYNTAX. There is a syntax error of some kind.
RANGE. A numeric value is out of its permitted range.
NAME. A named object cannot be found (possibly misspelled).
DICTNRY. A dictionary entry cannot be found.
TYPE. An object type is inappropriate in the context in which it is being used.
ACTION. (Not implemented.)
CONTEXT. A construct was used which is invalid in the context of Reader Interface Language files.
OTHER. Other error.
HA082375U003
Page 419 Issue 33 August 2019
OPERATOR FUNCTION BLOCKS EVENT
Block function
The EVENT block flags up the occurrence of an Eycon™ 10/20 Visual Supervisor,
e.g. disqualification of an access account, and provides a means for the strategy to respond to the event. Events are
recorded in the instrument’s alarm history/audit trail.
The block traps events based on either event number (flagging a single specified number) or else event priority (matching
all events at or above a specified priority). It may also trap events associated with specific function blocks.
If the event occurs, the block’s output Boolean Out latches TRUE. Setting the block’s Reset input TRUE resets Out.
While Reset remains TRUE, all new events are ignored (but buffered). When both Out and Reset are again FALSE, the
block is ready to match another event.
The block also matches and buffers events that occur while the database is stopped or unloaded. When the LIN Database
restarts the buffered events are flagged up.
A particular use for the EVENT block is to trigger an alarm on an event such as a failed login. A second EVENT block
can then be used to generate the clear signal on successful login, which is itself another event. In this way an alert is
created on a failed login that persists until a login is successful.
Block parameters
Symbols used in Table 173 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 420
EVENT OPERATOR FUNCTION BLOCKS
HA082375U003
Page 421 Issue 33 August 2019
ORGANISE FUNCTION BLOCKS
Area/Group blocks
The AREA and GROUP blocks are used to configure the area and group database needed for display navigation and flash
memory data recording in the Eycon™ 10/20 Visual Supervisor.
The block forms a two-tier hierarchy and can contain up to 16 groups. Each group consists of up to 16 display items and
16 recording channels. Overlapping groups and areas are possible, i.e. a point may appear in more than one group and
even more than once within a single group.
The blocks include alarm summary outputs so that the alarm status of the group/area can be monitored.
Figure 91 illustrates this hierarchy. The example shows an area (Area1) which has two groups (Zone1 and Zone2) each
with two PIDs in the display group, and recording the SP and PV of both PIDs.
Area 1
Zone 1 Zone 2
PID2.SP PID4.SP
PID2.PV PID4.PV
HA082375U003
Issue 33 August 2019 Page 422
AREA ORGANISE FUNCTION BLOCKS
AREA Block
Group1 - Group16
Up to 16 groups
GROUP Block
Up to 16 recording
channels per group
‘wire’ ‘wire’
Figure 92 Organisation of recording & display blocks into groups and areas
Block parameters
Symbols used in Table 174 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 423 Issue 33 August 2019
ORGANISE FUNCTION BLOCKS AREA
HA082375U003
Issue 33 August 2019 Page 424
GROUP ORGANISE FUNCTION BLOCKS
Block function
The GROUP block lets you associate (up to) 16 display-type blocks and 16 Recorder channel blocks with a group, specify
the recording sample rate and mode, and link a mimic to the group. The block also provides a set of group alarms.
Figure 92 shows how the block is associated with others in the ORGANISE and RECORDER block categories.
Block parameters
Symbols used in Table 175 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 425 Issue 33 August 2019
ORGANISE FUNCTION BLOCKS GROUP
2. Then, any digital setpoints must be associated in program order with the next of the GROUP block’s channels.
In this example the single Digital Setpoint 1 must be associated with Chan3.
NOTE In the preplot display, digital setpoints are displayed as single trends throughout, unlike analogues
which appear as PV/SP pairs in the ‘past’ region. You can in fact choose to display any digital(s) via the
‘digital’ channels, either locally or remotely derived.
3. When all the analogue PVs and digitals have been dealt with, the analogue SPs are associated with the
remaining channels in order. In this example, Analogue SP1 is associated with Chan4, and Analogue SP2 is
associated with Chan5, to complete the set.
‘Wire’
‘Wire’
‘Wire’ ‘Wire’
‘Wire’
‘Wire’
Setpoint Program
Setpoints generated by
ANSP1 ANSP2 DIGSP1 Setpoint Program
PAST FUTURE
Digital SP1
Analog SP2
Analog SP1
‘Chart’ Motion
PREPLOT VIEW
Figure 93 Organising setpoint channels for the EYCON ‘preplot’ view
HA082375U003
Issue 33 August 2019 Page 426
LOGDEV ORGANISE FUNCTION BLOCKS
Block function
This block lets you specify and control access to a specified archive medium, H: (Internal archive) as defined in the
Device field, and specify up to 16 groups of points (log groups) that are to be logged on that medium.
IMPORTANT Only one LOGDEV block may be included in any database.
Each log group is in turn specified via a LGROUP block, which collects data from up to 16 DR_DGCHP, DR_ANCHP,
DR_ALARM, and DR_REPRT point blocks.
Figure 94 shows how the ORGANISE blocks (shaded) interconnect the point data and logging device.
NOTE The hierarchy shown in Figure 94 coexists with, but is not the same as, the Area/Group hierarchy
used by the RECORDER category for flash recording of data (see Figure 92).
LOGDEV Block
Logging
Group1 - Group16 Device
Device
LGROUP Block
Point1 - Point16
Block parameters
Symbols used in Table 176 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 427 Issue 33 August 2019
ORGANISE FUNCTION BLOCKS LOGDEV
HA082375U003
Issue 33 August 2019 Page 428
LGROUP ORGANISE FUNCTION BLOCKS
Block function
The LGROUP block collects data from up to sixteen DR_DGCHP and DR_ANCHP point blocks, extendible to a total of
80, and allows it to be archived onto a medium specified by the associated LOGDEV block. A total of up to eight
DR_ALARM blocks, and up to 16 DR_REPRT blocks, can also be attached to a single LGROUP block including any
LOGGRPEX block extensions.
Figure 94 shows how the LGROUP block mediates between the point data in the log group and the logging device.
NOTE The hierarchy shown in Figure 94 coexists with, but is not the same as, the Area/Group hierarchy
used by the RECORDER block category for flash recording of data (see Figure 92).
Block parameters
Symbols used in Table 178 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 429 Issue 33 August 2019
ORGANISE FUNCTION BLOCKS LGROUP
Option Example
DateTime 01/01/88 00:02:26
Sprdsht 32143.001690
Integer 980605123030 (=5/6/98 @ 12:30:30)
Duration 00:02:26
Days 08
D,H,M,S 08:00:02:26
HA082375U003
Issue 33 August 2019 Page 430
LOGGRPEX ORGANISE FUNCTION BLOCKS
Block function
The LOGGRPEX block is used to extend the number of points that can be logged by a LGROUP block by an additional
16 points. You can log further points, up to a total of 80, by ‘daisy-chaining’ more extension blocks via their Next fields.
Block parameters
Symbols used in Table 180 are explained in Table 1.
HA082375U003
Page 431 Issue 33 August 2019
ORGANISE FUNCTION BLOCKS LPTDEV
Block function
The LPTDEV block defines access to a printer device, and specifies which print groups apply to that device. Figure 95
shows how the ORGANISE blocks (shaded) interconnect the point data and printing device.
LPTDEV Block
Printing
Group1 - Group16 Device
Device
PGROUP Block
Point1 - Point16
Block parameters
Symbols used in Table 181 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 432
LPTDEV ORGANISE FUNCTION BLOCKS
HA082375U003
Page 433 Issue 33 August 2019
ORGANISE FUNCTION BLOCKS PGROUP
Block parameters
Symbols used in Table 183 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 434
PROGRAMMER FUNCTION BLOCKS
HA082375U003
Page 435 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS SPP_CTRL
Block function
The SPP_CTRL (setpoint programmer control) block can access the status and programming/scheduling facilities of the
setpoint programmer, for use by User Screens, SFC, FBD, and across communications. This block must be run if all
aspects of programmer functionality are required.
It provides the same facilities as the programmer panel agent, except that it cannot report full text descriptions (other than
LIN database 8-character names), owing to the 8-character LIN Database STRING restriction.
Block parameters
Symbols used in Table 185 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 436
SPP_CTRL PROGRAMMER FUNCTION BLOCKS
HA082375U003
Page 437 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS SPP_DIG
Block function
This block groups together digital setpoints generated by the setpoint program running in the Visual Supervisor, and
provides corresponding digital outputs that can be ‘wired’ to remote target instruments via devolved control module
blocks. The digital outputs can also be used locally, e.g. by wiring them to DR_DGCHP blocks for flash memory
recording within the Visual Supervisor.
Figure 96 shows an example of an SPP_DIG block linked to other blocks in a Visual Supervisor. The scheme provides
control of a remote digital setpoint ‘Blower On’ across the comms (via the D25_D04 block), and also local recording of
the setpoint (via the DR_DGCHP block). Note that the DR_DGCHP block must form part of a ‘Group/Area’ hierarchy
for recording to happen, this is not shown in the figure, see Recorder Function Blocks.)
NOTE There is no equivalent block for handling the analogue setpoints generated by the setpoint program.
These are routed directly to their targets via D25_RAMP (devolved control module) blocks. See Chapter 8,
DCM Function Blocks, for details of using this block.
‘wire’ ‘wire’
Out.Bit3 ‘wired’ to Out.Bit3 ‘wired’ to
digital module block PV_1 CurrValdigital point block for
for routing via local recording (via
comms to remote D25_DO4 Block DR_DGCHP Block Area/Group hierarchy
target 2500 - not shown)
HA082375U003
Issue 33 August 2019 Page 438
SPP_DIG PROGRAMMER FUNCTION BLOCKS
Block parameters
Symbols used in Table 186 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 439 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS SPP_RAMP
Block function
Rate
RemEnabl
True TgtSP
Out
RampUnit
NewTgtSP
NewRate
ResetSP
Active
Holdback
RampDis HB_Dis True
True NotActiv
True True
HB_Value
HL_SP/
False
LL_SP False
HB_Mode True
False False
Hold
True
False
Complete
False
This block mirrors the functionality provided in the I/O system units by allowing a local setpoint to be ramped locally
(within the Visual Supervisor), as an alternative to executing the ramp in the remote I/O instrument.
Block parameters
Symbols used in Table 187 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 440
SPP_RAMP PROGRAMMER FUNCTION BLOCKS
HA082375U003
Page 441 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS SPP_RAMP
Holdback. (TRUE/FALSE). Used to control and indicate the Setpoint ramp is currently held back because PV is
unable to keep up with the changing Setpoint within the value defined in HB_Value.
Hold. (TRUE/FALSE). Used to control the Setpoint ramp. Set TRUE to HOLD the current Setpoint ramp. Set FALSE
to continue with normal operation.
HB_Mode. (NONE/LOW/HIGH/DEV). Shows the cause of the Holdback applied to the Setpoint ramp. NONE
indicates the Setpoint ramp is operating normally. LOW indicates the Setpoint ramp is held back, Holdback shows
TRUE, when the PV is below the Setpoint by the Holdback value. HIGH indicates the Setpoint ramp is held back when
the PV is above the Setpoint by the Holdback value. DEV indicates the Setpoint ramp is held back when the PV is below
or above the Setpoint by the Holdback value.
HB_Value. The configured deviation value between TgtSP and PV used to stop the Setpoint ramp when the PV is
unable to keep up with the changing Setpoint. This value is only applied if HB_Dis is FALSE.
Holdback applied,
Alarms.Holdback set TRUE
Setpoint
HB_Value Target
Setpoint
HB_Value PV
Holdback applied,
Alarms.Holdback set TRUE
HB_Dis. (TRUE/FALSE). Used to control the Holdback strategy of the Setpoint ramp. TRUE enables the Holdback
strategy using the value defined in HB_Value.
MinHback. For future use.
OorHback. For future use. Shows that Setpoint ramp is in Holdback and ‘rate-failed’.
RemEnabl. (TRUE/FALSE). Used to control the use of the ‘Remote’ Setpoint. TRUE when the Local Setpoint (TgtSP)
is being used by the PID, and FALSE when the ‘Remote’ Setpoint (NewTgtSP) is being used by the PID.
StLocRmt. (NoChange/StLocal/StRemote). Defines the Setpoint Mode when the controller powers up. NoChange
indicates the Setpoint selection remains as it was when the controller was powered down. StLocal indicates the controller
uses the local Setpoint when it powers up. StRemote indicates the controller uses the Remote Setpoint when it powers up.
StWspCh. (NoChange/GotoPV/GotoTSP). Defines the Setpoint strategy when the controller powers up. NoChange
indicates the Setpoint remains the same as when the controller was last used. GotoPV indicates the Setpoint takes the
same value as the process variable, PV. GotoTSP indicates the Setpoint takes the same value as the Target Setpoint,
TgtSP.
StHold. (NoChange/Hold/NoHold). Defines the Hold strategy when the controller powers up. NoChange indicates the
Hold remains the same as when the controller was last used. Hold indicates the controller powers up in Hold mode.
NoHold indicates the controller powers up in normal ramp mode.
SP_Servo. (TRUE/FALSE). Used to control the start point of the Setpoint ramp. Setpoint Power On
Set TRUE to start the Setpoint ramp from the current value derived from TgtSP. TgtSP
0
T
SP_Servo
F
HA082375U003
Issue 33 August 2019 Page 442
SPP_EXT PROGRAMMER FUNCTION BLOCKS
Block function
The SPP_EXT block is an optional block that may be used to provide additional control over a running program, or to
perform actions at given points in the programmer execution. The same functionality could be achieved using a Sequence
(SFC), but for applications that would otherwise need no sequence this block can be a simpler solution.
The block provides as inputs a number of programmer conditions: the current running program (CurrProg), a range of
segment numbers (FirstSeg to LastSeg), a set of states (Inhibit) that can be individually selected to inhibit the requested
programmer action, and an external stimulus (Trigger). If all the conditions are satisfied and the Trigger input is asserted,
then the Triggerd output sets and the requested programmer action, Action or GotoSeg, is performed.
Block parameters
Symbols used in Table 188 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 443 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS SPP_EXT
Alarms. The Segment alarm trips if the segment number specified in GoToSeg is illegal when the other input
conditions are satisfied (i.e. when Triggerd is TRUE).
Triggerd. This bit becomes TRUE only when all programmer conditions are satisfied, whereupon the specified action
is performed. Triggerd is asserted only if:
The current program name matches that specified in CurrProg
The segment currently running is included in the block specified by FirstSeg and LastSeg.
States specified as TRUE in the Inhibit parameter are not currently active
The Trigger input is TRUE.
Action. (NONE/HOLD/ABORT/SKIP/GOTO) Action to be performed on the program when the conditions are
satisfied, i.e. when Triggerd = TRUE. With HOLD selected, the program running is resumed when Triggerd resets to
FALSE. If GOTO is defined, the program proceeds to the segment number specified by GoToSeg after the currently
executing step has completed.
HA082375U003
Issue 33 August 2019 Page 444
PROGCTRL PROGRAMMER FUNCTION BLOCKS
Block function
This block is used to control the overall execution of a single Program configured using the Programmer Editor, i.e. one
PROGCTRL block per Programmer. It will allow the user to load and save a Program file, manipulate segments of a
Program, control the operation of the Program and indicate the current status of the Program.
It is one block type in a suite of blocks that includes the PROGCHAN and SEGMENT blocks, held in a PROG_WIZ
compound when automatically created using the Programmer Wizard. Together these blocks provide access to all
parameters in the Setpoint Program used in the Program file, created via the Programmer Editor.
IMPORTANT Always use the Programmer Wizard to configure the PROG_WIZ compound. This automatically
combines the required blocks, and generates the complete Program Template file that must be downloaded to the
instrument.
NOTE This block functions using a number of pages. Fields can be located using
<Page>.<Field>.<Subfield> convention.
Alarm indication
Alarms asserted in the Programmer block can be automatically added to the list of Alarms shown on the Monitor display
of an Eycon by using the AREA block and the GROUP block in the Recorder category, as shown.
NOTE If this AREA block is not configured, the Eycon Alarms
button on the Monitor display will only show PROGCTRL block AREA Block
alarms and events. Group1 - Group16
When Disp1 - Disp16 fields in a GROUP block are populated with the
PROGCTRL block an asserted alarm will appear on the Monitor display of Up to 16 groups per area
the Eycon when the Alarms button is pressed.
GROUP Block
NOTE This also applies to the PROGCHAN block and any other
process critical block. Disp1 - Disp16 Chan1 - Chan16
PROGCHAN
Block
HA082375U003
Page 445 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS PROGCTRL
Block parameters
Symbols used in Table 189 are explained in Table 1. Additional parameter information is given in the Block specification
menu section.
HA082375U003
Issue 33 August 2019 Page 446
PROGCTRL PROGRAMMER FUNCTION BLOCKS
Config Page
ChanAsyn Synchronous/asynchronous channel configuration AB(CD) hex
Chan_01 T/F 1
Chan_02 T/F 2
Chan_03 T/F 4
D
Chan_04 For Future use T/F 8
Chan_05 TRUE, if channel is running asynchronously T/F 1
Chan_06 T/F 2
Chan_07 T/F 4
C
Chan_08 T/F 8
Chan_01
to PROGCHAN blocks associated with this Program Block
Chan_08
Alarms
See File Page
AlgBlk Associated block providing Program algorithm Block
[W] Configured by the Programmer Wizard
Table 189 Block parameters
HA082375U003
Page 447 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS PROGCTRL
ProgFile. Used to configure the File name identifying which Program file will be used. The Program file is created
using the Programmer Editor.
AlgFile. File name identifying the Algorithm file used in the Program.
Filepath. Specifies the location of the Program Template file and Program file. See “Filepath parameter” on page 547.
for details.
Important Both Program Template file and Program file must be at the location defined in Filepath.
Load. (TRUE/FALSE). This is used to load the selected Program file. If Config.AlgBlk is configured Monitor.AlgFile
is populated with the filename specified by the file derived from Monitor.ProgFile. If Config.AlgBlk is not configured
FileErr.AlgBlk is set.
Save. (TRUE/FALSE). This is used to save the edited Program file.
SchFile. This is the file name of the Program scheduled to start at the configured date and time, see File.SchDate, and
File.SchTime.
SchDate. Shows the date when the configured Program file is next scheduled to run.
SchTime. Shows the time on the configured date, File.SchDate, when the configured Program file is next scheduled
to run.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data or network failure.
BadFile. Asserted if a file failed to load because the file being loaded contains errors.
Oob. Asserted if the PV value from one or more channels configured in the Program has exceeded a defined
boundary during execution. This remains asserted until the Program is reset, see PROGCHAN.Monitor.HiOob and
PROGCHAN.Monitor.LoOob.
Config. Asserted if the Program configuration is invalid. This will not allow the Program to be executed or
edited. This is caused if the Program Template file is not available when the database is started, or the configuration
of the blocks in the PROG_WIZ compound is invalid.
BadStart. Asserted on a user start if the offset into the selected segment is beyond the end of the segment.
Cleared on a START or LOAD.
Combined. Asserted if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
FileErr. (NONE/Format/TooBig/GoBack/AlgBlk/TmplFile/NoFile/ReadOnly/Other). This shows the cause of a
failure to load the file.
Format indicates a mismatch between the number of channels in Program and the number of channels configured
for the PROGCTRL block.
TooBig indicates the number of segments, user values, digital events in the Program exceeds the number
supported in the database.
GoBack indicates the configured Go back sequence is invalid. This may be caused if the specified Go back loop is
nested or overlaps another Go back loop.
AlgBlk indicates the file defined in AlgFile failed to load. This is caused if an suitable block type is not specified
in Config.AlgBlk.
TmplFile indicates the file defined in TmplFile failed to load. This may be caused if the defined Program Template
file contains errors.
NoFile indicates the file defined in ProgFile failed to load. This is caused if the defined Program file does not
exist.
ReadOnly indicates the file defined in ProgFile was not saved because the defined Program file was previously
saved as read-only, FileAttr.ReadOnly is TRUE.
Other indicates the file failed to load because of another form of error.
NOTE Information may be recorded in the instruments EVENTLOG.udz.
HA082375U003
Issue 33 August 2019 Page 448
PROGCTRL PROGRAMMER FUNCTION BLOCKS
FileVer. This shows the version of the loaded Program file. The version number increments each time the loaded
Program file is saved, i.e. File.Save set TRUE.
SaveDate, SaveTime. These fields show the date and time when the Program file was last saved, and are
automatically updated when File.Save is set TRUE.
Monitor Page
This page provides parameters used to monitor the operation of the loaded Program.
Mode. (AUTO/MAN). The current operating mode of the Program. It can only be changed when the Program is Idle
or Running (PROGCTRL.Monitor.State shows Idle or Running). AUTO is automatically selected whenever the Program
is started. In AUTO, outputs from the PROGCHAN block are controlled by the Program. In MAN, the Program can be
controlled for commissioning purposes. This allows the user to step through the Program manually or define a starting
segment to check events configured in each segment of the Program until AUTO is selected. This causes the Program to
run in AUTO from the current position. During MAN mode Monitor.StartSeg and Monitor.StartOff are ignored, and all
outputs of PROGCHAN block may be overwritten (Monitor.SegNo, Monitor.SP, Monitor.UsrVal, Monitor.Event etc.)
Command. Bitfields providing control for the currently active Program.
Start. Used to start the Program. TRUE applies the Start command to the Program defined in File.ProgFile.
Hold. Used to hold the Program. TRUE applies the Hold command to the currently active Program. Use the
Restart or StrtHold commands to resume from a Hold state.
Restart. Used to restart the Program. TRUE applies the Restart command to the currently active Program. This
command also restarts a Program that has been paused using the Hold command.
Abort. Used to abort the Program. TRUE applies the Abort command to the currently active Program.
Reset. Used to reset the Program. TRUE applies the Reset command to the Program, causing it to return to the
Idle state.
Skip. Used to skip the current segment. TRUE applies the Skip command to the current Setpoint Target
segment. This will start the next segment from the current Setpoint, ignoring Wait Setpoint
Conditions. Skip
Segment Segment
A B
Advance. Used to advance to the next segment. TRUE shows the advance command Setpoint Target
has been applied to the current segment. This will set the Program Setpoint equal to the Setpoint
Target Setpoint and advance to the next segment, ignoring any existing Wait Conditions.
Advance
Segment Segment
A B
ReDo. Used to repeat to the current segment. TRUE shows the redo command has been applied to the current
Dwell or Step segment. This can only be applied if the Program is Held.
Jog. Used to manually increase or decrease the duration of a current dwell segment. TRUE shows the current
segments will jog for the period defined in JogTime of the associated PROGCHAN block.
Schedule. Used to schedule the Program defined in File.SchFile. TRUE shows that a Program is already
scheduled, the existing schedule will be replaced with this one. If File.SchFile is empty, this will cancel an existing
schedule.
HA082375U003
Page 449 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS PROGCTRL
StrtHold. Used to start or restart and hold the Program. Set TRUE to start the Program Start Restart
on the rising edge, and then set to FALSE to hold the Program on the falling edge. If the
Program is currently Held, it will be restarted on the rising edge. T
F
Held
StrtAbrt. Used to start and terminate. Set TRUE to start the Program on the rising edge, Start
and then set to FALSE to abort the Program on the falling edge.
T
F
Abort
CmndHshk. Bitfields allowing the transition between commands controlling the current Program. Each bitfield is
set TRUE by default to allow the Program to run automatically without any intervention from the user.
Started. TRUE allows the Program to complete the transition from Idle to Running, initiated via
Monitor.Command.Start. FALSE prevents the Program from completing this transition allowing the user to
manually enable the continuation of the Program.
Held. TRUE allows the Program to complete the transition from Running to Held, initiated via
Monitor.Command.Restart. FALSE prevents the Program from completing this transition allowing the user to
manually enable the continuation of the Program.
Restartd. TRUE allows the Program to complete the transition from Held to Running, initiated via
Monitor.Command.Restart. FALSE, prevents the Program from completing this transition allowing the user to
manually enable the continuation of the Program.
Aborted. TRUE allows the Program to complete the transition from Running
or Held to Aborted, initiated via Monitor.Command.Abort. FALSE prevents the
Idle Reset
Program from completing this transition allowing the user to manually enable (Initial state) Aborted
the continuation of the Program.
Abort
Start
Idle. TRUE allows the Program to complete the transition from Complete or Abort
Aborted to Idle, initiated via Monitor.Command.Reset. FALSE prevents the Hold
Program from completing this transition allowing the user to manually enable Running Held
the continuation of the Program. While Idle is TRUE, Aborted is a transitory Restart
state only.
Complete
Reset
CMND
Inhibit. Set TRUE to prevent the next Program from starting.
Options. Bitfield for optional configuration.
FastRun. TRUE, causes a Setpoint Program to be illustrated over an accelerated period of 10 x normal speed.
NOTE Generally of use for demonstration purposes.
PwrFail. (RampBack/Abort/Continue/Hold/TestTime). This value should be configured and edited using the
Programmer Wizard. Shows the action that will be taken if a power failure occurs and the instrument hot-starts.
RampBack. Indicates that when power is restored the PV will ramp to the Setpoint
Target Setpoint for the Program. If the Segment is configured as RampRate or Power Off
Target
Power On
RampTime, the PV will Ramp to the Target Setpoint, if configured as Step the PV Setpoint
will Step to the Target Setpoint, and if configured as Dwell, the Dwell time will not
resume until the Target Setpoint is obtained at the last rate used in the Program.
Ramp Segment
Time
HA082375U003
Issue 33 August 2019 Page 450
PROGCTRL PROGRAMMER FUNCTION BLOCKS
Abort. Indicates that when power is restored the Program will be aborted. The Program will abort and enter the
Idle state if Monitor.CmndHshk.Idle is TRUE.
Continue. Indicates that when power is restored the Program continues from where it was interrupted when
power was lost. All parameters, such as the Setpoint and time remaining in the active segment will be restored to
their power-down values.
NOTE Recommended for applications that need to bring the measured PV to the Setpoint as soon as
possible.
Hold. Indicates that when power is restored the program will hold and enter the Held state, if
Monitor.CmndHshk.Held TRUE.
TestTime. Indicates that if power is restored before the period configured in Monitor.TestT1 the Program will
continue. However, if power is restored after the period configured in Monitor.TestT1 but before Monitor.TestT2 the
Program will RampBack using the rules specified, see PwrFail.RampBack. If power is not restored until after the
period configured in Monitor.TestT2 the Program will abort and enter the Idle state if Monitor.CmndHshk.Idle is
TRUE.
Setpoint
Setpoint
Setpoint Power On
Power Off Power Off Power On
Power Off
Power On
TestT1. This value should be configured and edited using Programmer Wizard. Used in conjunction with
Monitor.PwrFail and Monitor.TestT2. This defines the time limit, 00:00:01 to 23:59:59, used to allow the Program to
apply the Continue strategy after a power failure. Using 00:00:00 will not allow the Program to apply the Continue
strategy, see Monitor.TestT2.
TestT2. This value should be configured and edited using Programmer Wizard. Used in conjunction with
Monitor.PwrFail and Monitor.TestT1. It defines the time limit, 00:00:01 to 23:59:59, used to allow the Program to apply
the RampBack strategy after a power failure. Using 00:00:00 will not allow the Program to apply the RampBack strategy
causing the Program to abort and enter the Idle state if Monitor.CmndHshk.Idle TRUE.
StartSeg. Used to define the first segment of a Program using a value between 0 and one less than the value shown in
PROGCHAN.NumSegs. This value can only be set during an Idle state when Monitor.Mode shows AUTO and is
automatically set to 0 (zero - disabled) when Monitor.Mode is set to MAN.
StartOff. Used to apply an offset start time period (23:59:59 max) to the first segment of a Program. It is automatically
disabled (00:00:00) when Monitor.Mode is set to MAN.
Cycles. Used to define the number (1 - 999) of times the Program will run. Using 0 will cause the Program to repeat
continuously. If multiple channels are running in a Program, each channel will complete before the next cycle
commences. This implies a synchronisation point at the end of each cycle.
RateUnit. (Secs/Mins/Hours/Days). Used to define the time unit applied, by default, to all RampRate segment types
in the Program.
HA082375U003
Page 451 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS PROGCTRL
State. (Unloaded/Loading/Idle/Starting/Running/Complete/Holding/Held/Restart/Aborting/Aborted/Reseting/
Inhibit). Shows an enumerated description of the current state of the Program, as shown. Unloaded indicates a Program
file has not yet been loaded. Loading indicates the Program file is in the process of being loaded. Idle indicates that the
Program file has been loaded, but is not yet running. Starting indicates the Program has loaded and has been requested
to run but is not yet running. Running indicates the Program is in operation.
Complete indicates the Program has finished and the segment is held in an
indefinite dwell at the setpoint value shown in PROGCHAN.Monitor.CurrSP. Unloaded
Holding indicates that a command to hold the Setpoint has been requested, but Loading
it is not yet in a Held state. Held indicates that the Setpoint and remaining time
are frozen at the current value. Restart indicates that a command to restart the Idle
Reseting
Aborted
currently held Program has been requested, but it has not yet returned to a
Aborting
Running state. Aborting indicates that a command to terminate the Program Starting
Aborting
has been requested, but it has not yet in an Aborted state. Aborted indicates Holding
that the Program has terminated. Reseting indicates that a command to return Running Held
to the start of the Program has been requested. Inhibit indicates that a loaded Restart
Complete
Reseting
StateFlg. Bitfields showing a digital representation of the current state of the Program, see Monitor.State.
NOTE All corresponding bitfield details are described in Monitor.State.
Schedule. Set TRUE when a Program is scheduled.
Saving. Shows TRUE when the currently loaded Program is being saved. When the save is complete,
File.FileVer is increased by 1.
CycleNo. Shows the cycle number currently in operation.
ProgLeft, SegLeft. Shows the Program time remaining in this cycle, and the Segment time remaining.
NOTE The time displayed may be incorrect if the duration of the Program or Segment exceeds 36 hours, but
this does not affect the execution of the Program.
Config Page
This page provides parameters used to show the blocks used in the Program, either associated with the Channel Profile
or to populate files.
ChanAsyn. For Future Use - Bitfield indicating asynchronous operation of each channel.
Chan_01 to Chan_08. For Future Use - Set TRUE to configure corresponding channel operation.
Chan_01 to Chan_08. These values are configured and edited using Programmer Wizard. Each field shows the
PROGCHAN block associated with each channel in the Program.
AlgBlk. Shows the block name used to load the Algorithm file required by the Program. Select the block name of either
a, SFC_CON, RECORD, RCP_SET, or DR_REPRT. These blocks hold the data used to populate the required algorithm.
HA082375U003
Issue 33 August 2019 Page 452
PROGCHAN PROGRAMMER FUNCTION BLOCKS
Block function
This block is used to configure the data and options of one channel being profiled by the Program, i.e. one PROGCHAN
block per Profiled Channel. Each PROGCHAN block is linked to a single PROGCTRL block and can be associated with
up to 8 SEGMENT blocks providing a maximum of 32 segments per channel.
NOTE The Monitor.TgtSP, Monitor.EventOut bitfields and Monitor.UVal1 to Monitor.UVal4 in this block can
be used edit the Program currently operating only if the Program is Held, PROGCTRL.Monitor.StateFlg is
TRUE. Values edited in other segments (SEGMENT block) of the program do not take effect until the specific
segment is executed.
It is one block type in a suite of blocks that includes the PROGCTRL and SEGMENT blocks, held in a PROG_WIZ
compound when automatically created using the Programmer Wizard. Together these blocks provide access to all
parameters in the Setpoint Program used in the Program file.
Important Always use the Programmer Wizard to configure the PROG_WIZ compound. This automatically
combines the required blocks, and generates the complete Program Template file that must be downloaded to the
instrument.
NOTE This block functions using a number of pages. Fields can be located using
<Page>.<Field>.<Subfield> convention.
Block parameters
Symbols used in Table 190 are explained in Table 1. Additional parameter information is given in the Block specification
menu section.
HA082375U003
Page 453 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS PROGCHAN
HA082375U003
Issue 33 August 2019 Page 454
PROGCHAN PROGRAMMER FUNCTION BLOCKS
HA082375U003
Page 455 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS PROGCHAN
Setpoint
PROGCHAN.Monitor.Alarms.Lo and
Holdback applied Segment n.AlDly_n PROGCHAN.Monitor.Alarms.Oob
time set TRUE
HA082375U003
Issue 33 August 2019 Page 456
PROGCHAN PROGRAMMER FUNCTION BLOCKS
HiOob, LoOob. If TRUE and if Monitor.PV is greater than Monitor.CurrSP + Monitor.HbVal, or less than
Monitor.CurrSP - Monitor.HbVal, for longer than the time defined in Monitor.AlDly, Monitor.Alarms.Oob is set
TRUE.
HbVal. This shows the deviation value between Monitor.CurrSP and Monitor.PV used to stop the Setpoint ramp when
the PV is unable to keep up with the changing Setpoint. The value is configured in SEGMENT.Segment n.HbValn, where
n is the Segment page identifier. If PROGCHAN.HbMode is set to PerChan, the value is stored in the first Segment and
applies to all segments in the channel.
NOTE The HbVal field may be edited whilst the program is operating
AlDly. Used to define the delay in time, up to 12 hours, between detecting an alarm condition and asserting the
corresponding alarm bitfield. This time delay period provides a filter for nuisance alarm conditions.
EventOut. Bitfield showing the output events currently being executed in this segment of the Program. It is derived
from each specific SEGMENT block corresponding to a particular segment in the Program.
NOTE The number of digital events is not limited by the number of channels entered. If more digital events
are declared than the number of given channels can provide, additional PROGCHAN blocks will be created.
However, these additional blocks will not be profiled as only the digital events are being used.
Event1 to Event16. TRUE, if the digital event is currently active in the Segment. Wire a Monitor.Eventn to an
output block to enable/disable a connected digital field as the Segment is started.
NOTE If the Program is operating these values cannot be edited unless the Program is Held,
PROGCTRL.Monitor.StateFlg is TRUE. Changes to the output event values in other segments will only take
effect when the segment is executed.
UVal1 to UVal4. This shows the current value of the corresponding User Values, derived from SEGMENT blocks
that correspond to each particular segment in the Program. The number of User Values is not limited by the number of
channels entered. If more User Values are declared than the number of given channels can provide, additional
PROGCHAN blocks will be created. However, these additional blocks will not be profiled as only the User Values are
being used. These values can be wired to a destination within the instrument for use in a particular application. A different
value may be set in each segment via the Programmer Editor. Wire a Monitor.UValn to an output block to write the
configured User Value to the connected analogue value field as the Segment is started.
NOTE If the Program is operating with these values, they cannot be edited unless the Program is Held,
PROGCTRL.Monitor.StateFlg is TRUE. Changes to the User Values in other segments will only take effect
when the segment is executed.
Command. For Future Use - Bitfield controlling the operation of the segment currently being executed.
Skip. TRUE, will move the Program to the next Segment immediately and start it using Setpoint Target
the current Setpoint value, Monitor.CurrSP. Setpoint
Skip
Segment Segment
A B
Advance. TRUE, will set the current Setpoint value, Monitor.CurrSP to equal the Setpoint Target
Target Setpoint, Monitor.TgtSP and move the Program to the next Segment. Setpoint
Advance
Segment Segment
A B
JogTime. This defines the amount of time in minutes a dwell segment will jog when requested, i.e.
PROGCTRL.Monitor.Command.Jog is TRUE. Set +ve to jog forwards, or -ve to jog backwards.
EditCmnd. (NoAction/Delete/Insert). Shows the command performed on the Segment specified in Monitor.EditSeg.
When set to NoAction the Segment defined in Monitor.EditSeg no other action will occur. If set to Delete the Segment
defined in Monitor.EditSeg will be deleted from the Program, and all subsequent Segments are moved down by 1 and the
total number of Segments decrements. Segments can only be deleted when the program is not running. If set to Insert a
Segment will be added to the Program before the Segment defined in Monitor.EditSeg, and all subsequent Segments are
moved up by 1. The inserted Segment is configured as a zero duration dwell and if left in this condition, it will have no
effect on the Program when run. NoAction is automatically reset when the defined command is complete.
HA082375U003
Page 457 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS PROGCHAN
GoSeg. This defines the next non-sequential Segment that will be executed when this current Segment is complete. It
is the number of the first Segment in a Go Back sequence when set to a value more than 0 (zero). The segment initiating
the Go Back sequence is considered as the last segment in the sequence. This allows the implied segments to be repeated
the number of times specified in GoMax_1. If multiple Go Back sequences are configured GoSeg must not return to a
segment before the previous Go Back sequence, see below.
First Second
SEGMENT block SEGMENT block
Setpoint
RampTime Dwell Step Step RampRate Dwell RampRate End
(+ SegDur value)
3 1 Sec SegDur = 25 12.5
Mins Min. Dwell period per sec per sec
GoSeg_1 = 2
GoSeg_1 = 1 Not Permitted
Time
GoMax. This defines the total number of times (1-999) the next non-sequential portion of the Program will be
executed when the Segment is complete.
GoNum. This shows the current iteration.
HA082375U003
Issue 33 August 2019 Page 458
PROGCHAN PROGRAMMER FUNCTION BLOCKS
SyncTo. For Future Use - This defines the Segment number in the Program used synchronise the execution of the
Segment.
StateFlg. Bitfields showing the state of the current channel.
Wait1 to Wait8. TRUE shows which Wait conditions(s) are preventing the current segment from finishing.
ChActive. TRUE shows that a channel is currently being Profiled.
End. TRUE shows a Segment has completed and any Wait conditions have been successfully obtained.
Holdback. TRUE shows the measured PV (Monitor.PV ) has deviated from the setpoint (Monitor.CurrSP) by
more than a specified amount (Monitor.HbVal) causing a Holdback action to occur in a Segment. When set TRUE,
the configured Holdback Type and Holdback Mode are applied.
EditSeg. This defines the Segment that will be edited according to Monitor.EditCmnd.
ProgLeft. Shows the Program time remaining in this cycle for this channel.
Config Page
This page provides parameters used to show Programmer configuration.
Options. Bitfield for optional channel configuration.
DisChan. TRUE, disables the Profiling of this channel. This is automatically set TRUE in PROGCHAN blocks
that provide additional digital events and user values for the last enabled PROGCHAN block.
NumSegs. This shows the number of Segments in the channel, including the END Segment. It automatically
increments when a Segment is added, and decrements when a Segment is deleted.
MaxSegs. This shows the maximum number of Segments required by the Program as specified by the Programmer
Wizard.
NOTE This description will also apply to Config.DP_UV1 to Config.DP_UV4.
MaxEvent. This shows the maximum number of output events required by the Program as specified by the
Programmer Wizard. This avoids scrolling through unwanted events used by other Segments.
MaxExit, MaxWait. This shows the maximum number of Exit conditions and Wait conditions in the Program
respectively.
MaxUval. This value should be configured and edited using Programmer Wizard. This shows the maximum number
of User Values required by the Program.
MaxSP, MinSP. This shows the maximum and minimum Target Setpoint values detected from all Segments in the
channel respectively. PROGCTRL.Config.MaxSP can be wired to a TC_LIFE block to determine if a Program may
violate the permitted maximum temperature of a thermocouple.
HL_SP, LL_SP. These high and low Setpoint limit values should be configured and edited using Programmer Wizard.
Setpoint limits are active in all modes of operation, and restrict the target setpoint values configured in the Programmer
Editor.
DP_PV, DP_Hback, DP_Rate. (SCI/0/1/2/3/4). This value should be configured and edited using Programmer
Wizard. Defines the number of decimal places used when displaying the value defined in PROGCTRL.Monitor.PV and
PROGCTRL.Monitor.TgtSP, PROGCTRL.Monitor.HbVal, and Monitor.Rate. SCI indicates that scientific notation will
be used, e.g. 1.31e+1. 0, 1, 2, 3, and 4 indicate the number of decimal places used.
NOTE This description will also apply to Config.DP_UV1 to Config.DP_UV4.
Segments. This shows the name of the first SEGMENT block containing Program segment data.
PROGCHAN SEGMENT SEGMENT SEGMENT
PR01C1 PR01C1S1 PR01C1S2 PR01C1S3
HA082375U003
Page 459 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS PROGCHAN
Servo. (ServoSP/ServoPV). Defines the starting value of the Program used when
PROGCTRL.Monitor.Command.Start is set TRUE. ServoPV indicates that the Program will start from the current value
derived from PROGCTRL.Monitor.PV. This option is used in conjunction with PROGCTRL.Config.PVStart. ServoSP
indicates that the Program will start from the current value derived from PROGCTRL.Monitor.SP. This is ignored if
Config.PVStart is set to Rising or Falling.
PVStart. (Off/Rising/Falling). This determines the starting point of the Program Monitor.PV = this PV3
used when PROGCTRL.Monitor.Command.Start is set TRUE. This allows the point in Profile
Monitor.PV = this
point in Profile
Segment 2 Segment 3 Segment 4
HbMode. (Off/PerChan/PerSeg). Off indicates that Holdback will not be applied in the Program. PerChan indicates
that the value in PROGCHAN.Monitor.HbVal of the first segment in the channel applies to all other segments in which
PROGCTRL.Monitor.HbType is not Off. PerSeg indicates that each segment has its own configured Holdback value.
EndCond. (Reset/Dwell). Defines the action taken when the last Segment in a Program has completed. Reset indicates
the Program will automatically return to the Idle state, PROGCTRL.Monitor.State shows Idle. Dwell indicates the value
shown in PROGCTRL.Monitor.CurrSP will remain at the same value until the Program is reset.
HL_Uval1 to HL_Uval4, LL_Uval1 to LL_Uval4. This shows the high limit and low limit for each of the
configured User Values derived from the Programmer Wizard. This is the value at which the corresponding User Value,
SEGMENT.Segment n.UVal1 to SEGMENT.Segment n.UVal4, will be clipped.
DP_UV1 to DP_UV4. (SCI/0/1/2/3/4). This value should be configured and edited using Programmer Wizard.
Defines the number of decimal places used when displaying the corresponding User Value defined in
PROGCTRL.Monitor.UVal1 to PROGCTRL.Monitor.UVal4, see PROGCTRL.Config.DP_PV,
PROGCTRL.Config.DP_Hback, and PROGCTRL.Config.DP_Rate.
Names Page
This page provides parameters used to identify the Profile currently in operation.
PVName. This field is used to identify the channel. It shows the name of the variable currently being Profiled and
corresponds to the string entered in the Name field on the Profiled Channel page of the Programmer Wizard.
EvName1 to EvName16. These fields are used to identify a Digital Event. Each field shows the name of a digital
event output that exists in the Program and corresponds to one of the strings entered in the Digital Event Name field on
the Digital Event page of the Programmer Wizard.
UvName1 to UvName4. These fields are used to identify a User Value. Each field shows the name of a User
Value that exists in the Program and corresponds to one of the strings entered in the User Value Name field on the User
Value page of the Programmer Wizard.
Names2 Page
This page provides parameters used to identify the condition of each channel in the Program.
ExName1 to ExName8, WaName1 to WaName8. These fields are used to identify an Exit Condition or
a Wait Condition. Each field shows the name of an Exit condition and/or a Wait condition that exists in the Program and
corresponds to one of the strings entered in the Condition Name field on the Condition page of the Programmer Wizard.
HA082375U003
Issue 33 August 2019 Page 460
PROGCHAN PROGRAMMER FUNCTION BLOCKS
Enums Page
This page provides parameters used to show the Off and On values corresponding to each Digital Event Output included
in the Profile of this channel.
Ev1Off to Ev16Off, Ev1On to Ev16On. These fields are used to identify the enumeration configured for each
Digital Event condition. Each field shows the text string associated with each digital event output Off and digital event
output On value and corresponds to one of the strings entered in the Off Text field or On Text field on the Digital Event
page of the Programmer Wizard.
Enums2 Page
This page provides parameters used to show the Off and On values corresponding to each Exit and Wait condition
included in the Profile of this channel.
Ex1Off to Ex8Off, Wa1Off to Wa8Off. These fields are used to identify the enumeration configured for each
Exit or Wait condition. Each field shows the text string associated with each Exit and Wait Off value and corresponds to
one of the strings entered in the Off Text field on the Condition page of the Programmer Wizard.
Ex1On to Ex8On, Wa1On to Wa8On. These fields are used to identify the enumeration configured for each
Exit or Wait condition. Each field shows the text string associated with each Exit and Wait On value and corresponds to
one of the strings entered in the On Text field on the Condition page of the Programmer Wizard.
HA082375U003
Page 461 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS SEGMENT
Block function
This block provides parameters for up to 4 Segments for a single channel being profiled by the Program configured using
LINtools. A maximum of 8 SEGMENT blocks, 4 Segments per block, provide up to 32 segments per Program.
Each of the 4 Segment pages of a block correspond to a configured Setpoint Program segment displayed in the
Programmer Editor. If more than 4 Setpoint Program segments are configured the next SEGMENT block is referenced.
The first SEGMENT block is linked to the PROGCHAN block.
NOTE An END Segment will account for one segment in a Program, and will therefore use one Segment
page of a SEGMENT block.
PROGCTRL
PR01
When the Program is operating only the corresponding page of the SEGMENT block configuration is applied. All other
SEGMENT block configuration will not take effect until the specific segment is executed. However, the current Target
Setpoint, output Events and User Values must be edited in the PROGCHAN.Monitor.TgtSP,
PROGCHAN.Monitor.EventOut bitfields and PROGCHAN.Monitor.UVal1 to PROGCHAN.Monitor.UVal4 as
appropriate.
It is one block type in a suite of blocks that includes the PROGCTRL block and PROGCHAN block, held in a
PROG_WIZ compound when automatically created using the Programmer Wizard. Together these blocks provide
access to all parameters in the Setpoint Program.
Important Always use the Programmer Wizard to configure the PROG_WIZ compound. This automatically
combines the required blocks, and generates the complete Program Template file that must be downloaded to the
instrument.
NOTE This block functions using a number of pages. Fields can be located using
<Page>.<Field>.<Subfield> convention.
Block parameters
Symbols used in Table 191 are explained in Table 1. Additional parameter information is given in the Block specification
menu section.
Parameter Function Units Status*
Segment 1 Page
SegNam_1 Name of segment String
SegId_1 For future use - 4 character string identifying segment String
SegTyp_1 Segment type Enum
SegDur_1 Duration of Segment Integer
TgtSP_1 Required Target Setpoint for the Segment Eng
Rate_1 Current rate to target Integer
HbType_1 Current Holdback type Enum
HbVal_1 Current Holdback value Eng
AlDly_1 Time delay before asserting alarm Time
Events_1 Event output indicators ABCD hex
Event1
to Digital event output T/F
Event16
UVal1_1
to User defined value Integer
UVal4_1
Continued...
HA082375U003
Issue 33 August 2019 Page 462
SEGMENT PROGRAMMER FUNCTION BLOCKS
HA082375U003
Page 463 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS SEGMENT
Setpoint
RampTime Dwell Step Step RampRate Dwell RampRate End
(+ SegDur value)
3 1 Sec SegDur = 25 12.5
Mins Min. Dwell period per sec per sec
GoSeg_1 = 2
GoSeg_1 = 1 Not Permitted
Time
SegDur_1. Used to define the amount of time the Segment will take to complete. Configured in conjunction with the
RAMPTIME Segment type to define the duration of the Ramp, and the DWELL Segment type. It can also be used with
a STEP Segment type to define a dwell period once the Target Setpoint is achieved and includes the time taken to process
the STEP Segment.
NOTE The time displayed when connected to the instrument may be incorrect if the duration of the Program
or Segment exceeds 36 hours, but this does not affect the execution of the Program.
TgtSP_1. Used to show the Setpoint value required by the Program channel at the end of the Segment for starting the
next segment. Unavailable when Segment n.SegTyp_n shows DWELL.
Rate_1. Used to show the rate at which the operating Setpoint in the Segment will achieve the Target Setpoint value,
SEGMENT n.TgtSP_n in Programs running a single channel. However, in Programs running multiple channels, this
shows the calculated rate at which the operating Setpoint will attain the Target Setpoint in a RAMPTIME Segment.
HbTyp_1. Used to show the criteria for applying Holdback and asserting associated alarms if the priority is set greater
than 0 (zero).
NOTE Holdback extends the duration of a Setpoint ramp allowing the measured PV to 'catch up' with its' SP
(setpoint), if it has deviated from it by more than a specified amount. If PV deviates from its' SP by more than
a specified amount (Monitor.HbVal), the associated Monitor.Alarms TRUE are asserted and the configured
Holdback operation is initiated.
HiHback, LoHback. If TRUE and if Monitor.PV is greater than Monitor.CurrSP + Monitor.HbVal, or less than
Monitor.CurrSP - Monitor.HbVal ramping is held. If this persists for longer than the time defined in Monitor.AlDly,
Monitor.Alarms.Holdback is set TRUE.
HiAlarm, LoAlarm. If TRUE and if Monitor.PV is greater than Monitor.CurrSP + Monitor.HbVal, or less than
Monitor.CurrSP - Monitor.HbVal for longer than the time defined in Monitor.AlDly, Monitor.Alarms.Hi or
Monitor.Alarms.Lo are set TRUE, respectively.
PROGCHAN.Monitor.Alarms.Hi and
Segment n.AlDly_n PROGCHAN.Monitor.Alarms.Oob
Holdback applied time set TRUE
Setpoint
PROGCHAN.Monitor.Alarms.Lo and
Holdback applied Segment n.AlDly_n PROGCHAN.Monitor.Alarms.Oob
time set TRUE
HiOob, LoOob. If TRUE and if Monitor.PV is greater than Monitor.CurrSP + Monitor.HbVal, or less than
Monitor.CurrSP - Monitor.HbVal, for longer than the time defined in Monitor.AlDly, Monitor.Alarms.Oob is set
TRUE.
HA082375U003
Issue 33 August 2019 Page 464
SEGMENT PROGRAMMER FUNCTION BLOCKS
HbVal_1. Used to the deviation value between Monitor.CurrSP and Monitor.PV used to stop the Setpoint ramp when
the PV is unable to keep up with the changing Setpoint. The value is configured in SEGMENT.Segment n.HbValn, where
n is the Segment page identifier. If PROGCHAN.HbMode is set to PerChan, the value is stored in the first Segment and
applies to all segments in the channel.
AlDly_1. Used to show the delay in time, up to 12 hours, between detecting an alarm condition and asserting the
corresponding alarm bitfield. This time delay period provides a filter for nuisance alarm conditions.
Events_1. Bitfield showing the current state of the digital event outputs of the Program corresponding to this segment.
NOTE The number of digital event outputs is not limited by the number of channels entered. If more digital
events are declared than the number of given channels can provide, additional PROGCHAN blocks (8
maximum) will be created. However, these additional blocks will not be profiled as only the digital events are
being used.
Event1 to Event16. TRUE shows a digital event output applies in a segment of the Program corresponding to
this Segment page in the SEGMENT block.
UVal1_1 to UVal4_1. Used to show a user specified value for the corresponding User Value Names configured
using Programmer Wizard.
NOTE The number of User Values is not limited by the number of channels entered. If more User Values are
declared than the number of given channels can provide, additional PROGCHAN blocks (8 maximum) will be
created. However, these additional blocks will not be profiled as only the User Values are being used.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. Asserted if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Cond_1. Bitfield showing the current condition of the active Segment in each of the channels.
NOTE The table below shows the relationship of control between Cond_n bitfields, InvCnd_n bitfields and
the CurrCond bitfields.
InvCnd_1. Bitfields used to show an inverted Segment condition state.
HA082375U003
Page 465 Issue 33 August 2019
PROGRAMMER FUNCTION BLOCKS SEGMENT
GoSeg_1. Used to show the number of the first Segment in a Go Back Sequence when set to a value more than 0
(zero). The segment initiating the Go Back Sequence is considered as the last segment in the sequence. This allows the
implied segments to be repeated the number of times specified in GoMax_1. If further Go Back Sequences are configured
this value must not return to a segment before the previous Go Back Sequence, see below.
First Second
SEGMENT block SEGMENT block
Setpoint
RampTime Dwell Step Step RampRate Dwell RampRate End
(+ SegDur value)
3 1 Sec SegDur = 25 12.5
Mins Min. Dwell period per sec per sec
GoSeg_1 = 2
GoSeg_1 = 1 Not Permitted
Time
GoMax_1. Used to show the total number of times the Go Back Sequence will be applied. Go Back is not applied
when this shows 0 (zero).
SyncTo_1. For future use - Used to show the Segment number in the Program used to synchronise the execution of
the Segment.
Segment 2, Segment 3 and Segment 4 Page
These pages provide identical parameters used to show the operational conditions of each loaded Program segment; see
Segment 1 page.
Next. (Segment 4 page only) Used to show the next SEGMENT block in the Program that provides up to 4 additional
Program segments.
HA082375U003
Issue 33 August 2019 Page 466
RECORDER FUNCTION BLOCKS
AREA Block
Group1 - Group16
GROUP Block
Disp1 - Disp16 Chan1 - Chan16
Up to 16 recording
channels per group
‘wire’ ‘wire’
NOTE The DR_ANCHP and DR_DGCHP point blocks also allow data to be permanently archived onto
removable media for replay offline. This is data logging, as opposed to flash recording which is replayed in the
instrument. For data logging, the point blocks must be organised into logging groups via special ORGANISE
category blocks, LOGDEV, LGROUP, and LOGGRPEX, see Organise function block category for details.
HA082375U003
Page 467 Issue 33 August 2019
RECORDER FUNCTION BLOCKS DR_ANCHP
Block function
The DR_ANCHP block lets you record the history of a set of analogue data values onto the local flash storage system of
the instrument running the block. The record can be subsequently replayed on the instrument.
The block specifies how the analogue value is to be reviewed and recorded. The functionality of both measured and
derived analogue channels is provided by the block.
The analogue point to be recorded is ‘wired’ in the control database to the block’s CurrVal input field. The block must
be attached to a GROUP block, via a Chann field, for recording to take place. A total of up to 16 data recording blocks
(DR_ANCHP and DR_DGCHP blocks) can be attached to a given GROUP block.
Block parameters
Symbols used in Table 192 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 468
DR_ANCHP RECORDER FUNCTION BLOCKS
Option Example
XXXXX 12345
XXXX.X 1234.5
XXX.XX 123.45
XX.XXX 12.345
X.XXXX 1.2345
XXXXXXXX 12345678
XXXXXX.X 123456.7
XXXXX.XX 12345.67
XXXX.XXX 1234.567
XXX.XXXX 123.4567
XX.XXXXX 12.34567
X.XXXXXX 1.234567
X.XXXE+XX 1.234E+56
HA082375U003
Page 469 Issue 33 August 2019
RECORDER FUNCTION BLOCKS DR_ANCHP
AlmTyp_1 to AlmTyp_4. (ABS LOW /ABS HIGH /DEV IN /DEV OUT /ROC RISE /ROC FALL) These
parameters let you specify four user alarms to appear in the Alarms field, which should match the alarm inputs wired into
the AlmAct bitfield. The possible options are shown in the table below.
Parameter Function
ABS LOW Low absolute
ABS HIGH High absolute
DEV IN Low deviation
DEV OUT High deviation
ROC RISE Rate of increase
ROC FALL Rate of decrease
HA082375U003
Issue 33 August 2019 Page 470
DR_DGCHP RECORDER FUNCTION BLOCKS
Block function
The DR_DGCHP function block lets you record the history of a set of digital data values onto the local flash storage
system of the instrument running the block. The record can be subsequently replayed on the instrument.
The block specifies how the digital value is to be reviewed and recorded.
The digital point to be recorded is ‘wired’ in the control database to the block’s CurrVal input field. The block must be
attached to a GROUP block, via a Chann field, for recording to take place. A total of up to 16 data recording blocks
(DR_DGCHP and DR_ANCHP blocks) can be attached to a given GROUP block.
Block parameters
Symbols used in Table 195 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 471 Issue 33 August 2019
RECORDER FUNCTION BLOCKS DR_DGCHP
HA082375U003
Issue 33 August 2019 Page 472
DR_ALARM RECORDER FUNCTION BLOCKS
Block function
The DR_ALARM function block provides for alarm filtering when recording to log files and/or printers.
Block parameters
Symbols used in Table 196 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
*Currently fixed at 1
Table 196 Block parameters
HA082375U003
Page 473 Issue 33 August 2019
RECORDER FUNCTION BLOCKS DR_REPRT
Block function
The DR_REPRT function block generates user-defined text reports and sends them to text devices (printers, or for
messages to UHH recording files), and cannot be shared between PGROUP, LGROUP or RGROUP blocks, i.e. it may
be referenced only once in the database.
Block parameters
Symbols used in Table 197 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 474
RGROUP RECORDER FUNCTION BLOCKS
Block function
This block provides run-time control and monitoring of the Data Recording, specifically
Control of recording, e.g. enabling/disabling, rate, etc.
Monitoring of recording, e.g. expected duration of locally stored history
Monitoring of memory life expectancy
Graphical User Interface support, e.g. alarm collection
A single block must be created for each Data Recording Group that is to be run. This means that each Data Recording
Group index requires an RGROUP block.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 475 Issue 33 August 2019
RECORDER FUNCTION BLOCKS RGROUP
This may also be asserted if data recording has not been licensed.
Update. Asserted if the configured update rate has not been obtained, i.e. ActUpdat does not correspond to the
selected recording period,UpdateA or UpdateB, derived from SelectB. This remains active until Reset.Update is set
TRUE, Enable is set FALSE, or the recording is reconfigured.
Archive. Asserted if the Data Recording file, .uhh, relating to the group identified in Id, was not successfully
archived. This occurs if the file was deleted before it was archived. This remains active until Reset.Archive is set
TRUE, or the recording is reconfigured.
LostData. Asserted if an internal queue overflow causes the loss of recorded data. This may occur if a surge of
asynchronous data occurs during the recording, i.e. alarms and messages. This remains active until Reset.LostData
is set TRUE, Enable is set FALSE, or the recording is reconfigured.
NOTE Alarms and messages are not associated with periodic data recording but may affect the ActUpdat
times.
MemHW. Asserted if the recording memory device has exceeded its specified usage parameter.
Group. Asserted if any alarm within the group is active, identified when Status.GrpAct is TRUE.
Combined. Asserted, if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Status. Bitfield indicating general comms./hardware error conditions.
Config. TRUE, when Alarms.Config is asserted. Indicates Data recording configuration failure.
Update. TRUE, when Alarms.Update is asserted. Indicates configured update rate has not been obtained.
HA082375U003
Issue 33 August 2019 Page 476
RGROUP RECORDER FUNCTION BLOCKS
Archive. TRUE, when Alarms.Archive is asserted. Indicates a .uhh file was deleted before it was archived.
LostData. TRUE, when Alarms.LostData is asserted. Indicates an internal queue overflow causing the loss of
recorded data.
MemHW. TRUE, when Alarms.MemHW is asserted. Indicates the recording memory device has exceeded the
specified usage parameter.
GrpAct. TRUE, when any alarm within the group is active.
GrpUnack. TRUE, when any alarm within the group is unacknowledged.
Recordng. TRUE, when data recording is in progress.
Batching. TRUE, when the current recording was initiated automatically by the start of a batch. Recording will
also stop automatically when the batch terminates.
Reset. Digital inputs used to reset errors conditions.
Update. Set TRUE to clear Alarms.Update and set Status.Update FALSE.
Archive. Set TRUE to clear Alarms.Archive and set Status.Archive FALSE.
LostData. Set TRUE to clear Alarms.LostData and set Status.LostData FALSE.
ActUpdat. Shows the currently achieved update period, and should correspond to the selected recording
period,UpdateA or UpdateB, derived from SelectB. If insufficient CPU time was available for recording this period will
not correspond to the selected recording period and will set Status.Update and Alarms.Update TRUE.
Duration. Shows a current estimate of the recording time, in hours, that this group is able to maintain on the
instrument.
IMPORTANT To ensure no loss of data, archiving should be set up at a period much lower period than this.
HA082375U003
Page 477 Issue 33 August 2019
RECORDER FUNCTION GROUP HISTDATA
Block function
This block enables trend history and alarm/event log data from a defined period to be included in a Report file (.uyf) that
will be printed. This block must reference a GROUP block or DR_ALARM block that has captured the required trendand
alarm/event data respectively.
Block parameters
Symbols used in this table are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
StrtDate, StrtTime, EndDate, EndTime. Used to write the start and end date and time of the required sample
period when Mode is MANUAL. Automatically populated if Mode is AUTO and when Sample is set TRUE.
Data. Used to define the block to collect the required trend or alarm/event data from. Define a GROUP block to include
trend data in the Report file, or a DR_ALARM block to include alarm/event data.
HA082375U003
Issue 33 August 2019 Page 478
S6000 FUNCTION BLOCKS
HA082375U003
Page 479 Issue 33 August 2019
SELECTOR FUNCTION BLOCKS
HA082375U003
Issue 33 August 2019 Page 480
SELECT SELECTOR FUNCTION BLOCKS
Type
PV_1 OP
PV_2 PV_1_sel
HIGHEST
MIDDLE
LOWEST PV_2_sel
PV_3
PV_3_sel
PV_4 PV_4_sel
NoOflPs
Please refer to Figure 99. The SELECT block has four input connections and can be configured to select the highest or
lowest value of two, three, or four inputs, or the middle value of three inputs. The input selected is indicated by a digital
output and its value is retransmitted as an analogue output OP.
Block parameters
Symbols used in Table 200 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 481 Issue 33 August 2019
SELECTOR FUNCTION BLOCKS SWITCH
Block function
Switch
PV_1
TRUE
OP
FALSE
PV_2
Please refer to Figure 100. The SWITCH block acts as a single-pole double-throw switch. When the Switch parameter
is set to TRUE, the output OP transmits PV_1. When Switch is FALSE, OP transmits PV_2.
Block parameters
Symbols used in Table 201 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 482
ALC SELECTOR FUNCTION BLOCKS
Block function
Please refer to Figure 101. The Alarm Collection block simplifies alarm monitoring by allowing alarms of the same
specified priority to be collected together to generate a single collected alarm logic output.
Block parameters
Symbols used in Table 202 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 483 Issue 33 August 2019
SELECTOR FUNCTION BLOCKS 2OF3VOTE
OneFail
1 faulty
2 or more faulty
AllFail
Please refer to Figure 102. The 2OF3VOTE block outputs a ‘best’ average (arithmetic mean) value PVout derived from
three analogue inputs PV1, PV2, and PV3.
If any one of the PVn inputs is faulty, as declared by inputs to the Faults bitfield, it is rejected and is not used in the
average. If two or more PVn inputs are faulty, all three are rejected and PVout is not recalculated but holds its last good
value.
The non-faulty PVn inputs are also tested for ‘spread’ by comparing their differences with a user-specified tolerance value
(Tolernce). The average is formed only from PVn values that differ from each other by amounts less than or equal to
Tolernce. If no pairs of inputs are in-tolerance, all are rejected and PVout again holds its last good value.
Appropriate alarm bits set when inputs are faulty or out of tolerance.
Block parameters
Symbols used in Table 203 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 484
2OF3VOTE SELECTOR FUNCTION BLOCKS
Faults. 3-bit bitfield defining the existence of faults on each of the inputs PV1, PV2, PV3. A TRUE PVnfault bit
signifies a ‘fault’ on input PVn. A faulty input is not used in the derivation of PVout.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
AllFail. This alarm is flagged if two or more of the PVn inputs are defined as faulty (by the Faults parameter), or
if no pair of PVn values differs by an amount less than or equal to Tolernce. A TRUE AllFail alarm prevents PVout
from being recalculated, holding it at its last good value.
OneFail. This alarm is flagged if only one of the PVn inputs is defined as faulty (by the Faults parameter), or if
only one or two pairs of PVn values differ by an amount less than or equal to Tolernce.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Tolernce. Specifies the maximum amount by which pairs of PVn inputs may differ before they are regarded as being
‘out of tolerance’. The number of pairs of non-faulty inputs that are in-tolerance determines how, or if, PVout is
calculated. See Figure 102, and the PVout section next.
PVout. This is the ‘best’ average derived from the three inputs, PV1 to PV3.
Subject to the rejection of faulty input(s), the block calculates the absolute differences between the three possible input
pairs as |PV1–PV2|, |PV1–PV3|, and |PV2–PV3|. These values are compared with Tolernce to determine how many pairs
are in-tolerance, and PVout is then calulated accordingly. Table 204 shows how this works, gives simple examples, and
indicates the alarm bits that are set.
Pairs in-tolerance Alarms PVout average of: Example (Tolernce = 2.0)
PV1 PV2 PV3 PVout
3 (None) PV1, PV2, PV3 7.0* 6.0 5.0 6.0
2 OneFail Higher-valued pair only 4.0 6.0 8.0 7.0
1 OneFail This pair only 4.0 6.0 9.0 5.0
0 AllFail (not re-calculated) 3.0 6.0 9.0 (Held)
HA082375U003
Page 485 Issue 33 August 2019
SELECTOR FUNCTION BLOCKS TAG
Block parameters
Symbols used in Table 205 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
Parameter Function Units Status
SelTag
Tag1 TRUE selects Tag1 field (lowest priority) T/F
Tag2 TRUE selects Tag2 field T/F
Tag3 TRUE selects Tag3 field T/F
Tag4 TRUE selects Tag4 field T/F
Tag5 TRUE selects Tag5 field T/F
Tag6 TRUE selects Tag6 field T/F
Tag7 TRUE selects Tag7 field T/F
Tag8 TRUE selects Tag8 field (highest priority) T/F
Ø Ø Ø Ø Ø Ø Ø Ø
Tag1 to Tag8 8-character text strings or field names Alphanumeric
TAG Actual tag display when loop on front panel Alphanumeric
Alarms
Software Block RAM data sumcheck error / network failure T/F
Combined OR-ing of all Alarms bits T/F
Block1 to Block8 Block references, as sources of Tag1-Tag8, resp. Name
Options
NoMsg Suppress normal front-panel messages T/F
NoInval Suppress the ‘INVALID’ front-panel message T/F
Ø Ø Ø Ø Ø Ø Ø Ø
HA082375U003
Issue 33 August 2019 Page 486
TAN FUNCTION BLOCKS
HA082375U003
Page 487 Issue 33 August 2019
TIMING FUNCTION BLOCKS
HA082375U003
Issue 33 August 2019 Page 488
SEQ TIMING FUNCTION BLOCKS
Block function
SEQE
Extensions
Step 4 Manual/Hold
Cycle
Step 3
HR_OP
Step 2 Auto
LR_OP OP
Step 1 Ranging
Start
Step 0 Track
Track
Please refer to Figure 103. This block lets you profile analogue setpoints and/or time-sequence 15 digital output channels
as a series of four steps, plus an initialisation step. More steps can be added to the sequence in multiples of eight using
Sequence Extension blocks (SEQE). SEQE blocks are controlled from the main SEQ block, and contain the parameter
database for each step. Sequences can be cycled, interlinked and cascaded in series.
Each step defines a setpoint slope, end value (target) and dwell time, together with the status of the 15 digital outputs for
that step. The digitals can also be written to (via the DigOut_n fields) from the runtime screen or via connections from
the control strategy.
The Sequence block has Auto/Manual/Track/Hold control with fallback. Sequence interlocks control the execution of
the sequence allowing a conditional Wait and Continue at each step. The whole sequence can be re-cycled automatically
or conditionally on detection of an input.
Operating Modes. Execution of the sequence occurs only when the block is operating in Automatic mode. In
Manual, Track or Hold modes the ramp or timing functions are interrupted, allowing derivation of the output value OP
from other sources. In this way, OP can be moved away from the value set by the sequence.
However, these actions merely defer the real-time duration of the sequence, since ramp rates are defined as a slope and
target value in each step, and the dwell timer is frozen. Normal execution of the sequence resumes at the ‘deferred’ time
as soon as the operating mode is switched back to Automatic.
Priority 1.
Hold Mode. Hold mode is selected from the input of SelHold. In Hold mode, OP is locked and cannot be changed.
Priority 2.
Track Mode. Track mode is selected from the input of SelTrack. In Track mode OP is controlled by Track.
Priority 3.
Auto/Manual Mode. In Automatic mode OP is controlled by the sequence function. In Manual mode OP can be adjusted
independently.
HA082375U003
Page 489 Issue 33 August 2019
TIMING FUNCTION BLOCKS SEQ
Block parameters
Symbols used in Table 206 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
Ø Ø Ø Ø Ø Ø Ø Ø
HA082375U003
Issue 33 August 2019 Page 490
SEQ TIMING FUNCTION BLOCKS
HA082375U003
Page 491 Issue 33 August 2019
TIMING FUNCTION BLOCKS SEQ
If very small slopes are unavoidable, do not use a SEQ block. Instead, use a timer to increment OP less
frequently than the scan rate, by proportionately larger quantities.
EndVal_n. Target Value. This value represents the target value for the step, where n is the block step number. This
value can be changed even when the step is active.
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
Extend. Used to enter the name of the SEQE Extension block. An entry in this field automatically links the control
and database of the extension block to the main sequence block. Subsequent extension blocks are linked using the Extend
fields in the preceding block.
TimeBase. (Secs/Mins/Hours/Days). Specifies time units for Slope and Dwell.
Track. Controls OP in Track mode.
StatIn. This bitfield is used to control the sequence via digital inputs from the strategy.
Init. Initialise Sequence. Initialises sequence by forcing a return to step 0 irrespective of the operating mode.
The initialisation takes place whenever Init is set to TRUE, and on completion, the field automatically returns to
FALSE. In Auto mode, the initialisation causes OP to ramp towards a value defined by StartVal at a rate set by
Slope_0. The sequence remains in Step 0 until Start is set to TRUE.
Start. Starts execution of the sequence by incrementing forward from Step 0 to 1 after initialisation. The Start
field automatically returns to FALSE. Note that sequence programs which continuously cycle only require to be
started after a ‘Cold Start’ condition. It is also possible to automatically start sequences following a ‘Cold Start’ by
changing the default settings in the following fields during configuration:
CurrStep = 1 ( or any other step)
Start = TRUE
Init = FALSE
Continue. Used in conjunction with the Wait flag which can be set individually for each step in the DigOut
fields. If the Wait flag in a particular step is set to TRUE, the sequence will wait at the end of the respective step
until either Continue is set to TRUE, or the respective Wait flag is set FALSE.
The StepDone flag is also set TRUE during the period that the Wait function is active.
Cycle. Allows a sequence program to be continuously cycled. Therefore, when Cycle is set to TRUE, a sequence
automatically returns to Step 1 on completion of the final step (defined in MaxSteps). Note that re-initialisation of a
cyclic sequence using the Init input interrupts the cycle by forcing the sequence program into Step 0.
A sequence program remains in the last step on completion when Cycle is set to FALSE. The CycDone output is set
to TRUE in this condition to indicate that the sequence program has finished. If the Cycle input is subsequently set
to TRUE, the sequence restarts at Step 1.
Track_0. When this input is TRUE, Track mode is automatically selected when the sequence block enters Step
0, irrespective of the status of SelTrack. Consequently, OP follows Track unless Hold mode is selected. Track mode
is also automatically deselected when the sequence program is started (Start = TRUE), unless SelTrack = TRUE.
The operating mode is not affected in Step 0 when Track_0 is FALSE.
SelHold. Selects Hold mode.
SelTrack. Selects Track mode.
StatOut. This bitfield indicates the current status of the sequence.
Ramping. Indicates the operating phase of the step. A Ramping phase is indicated by TRUE and a Dwell time
phase is indicated by FALSE. Note that operation in Manual, Track, or Hold modes does not affect the state of this
field.
HA082375U003
Issue 33 August 2019 Page 492
SEQ TIMING FUNCTION BLOCKS
StepDone. Used in conjunction with the Wait / Continue facility at the end of each step. StepDone is TRUE if
the sequence is held by the Wait condition at the end of a step, and returns to FALSE as soon as the sequence
continues, or is re-initialised. StepDone is also TRUE at the end of the last step in a sequence when Cycle is
FALSE.
CycDone. Indicates when the sequence has finished and is set TRUE on completion of the last step when Cycle
is FALSE. The field returns to FALSE as soon as the sequence is re-initialised or Cycle is set to TRUE.
NotTrack. FALSE when Track mode is active.
TimeLeft. Countdown timer indicating the remaining dwell time in the current step. Its value freezes when either
Hold, Track or Manual modes are active.
DigOut. This bitfield indicates the current digital output status, i.e. the state of each of the block’s 15 digital output
bits, and of the Wait field for the current step. DigOut is read-only in HOLD and TRACK modes.
DigOut_n (n = 0 to 4). These five bitfields define the digital output states and Wait fields for each of the block steps
0 to 4, respectively.
Bit 0 - E. Define the output state of each bit in the respective step.
Wait. Causes the sequence to wait at the end of the step for a condition. When the Wait field is set to TRUE,
execution of the sequence stops until either Continue = TRUE, or Wait is set to FALSE. The sequence continues at
the next step as soon as one of these conditions is satisfied.
Dwell_n (n = 1 to 4). Dwell Time for step n. Specifies the time during which the output OP is maintained at the
target value in each step. The time units are defined in the TimeBase field. Dwell time can be adjusted dynamically but
is ignored if the value is changed whilst timing is in progress.
HA082375U003
Page 493 Issue 33 August 2019
TIMING FUNCTION BLOCKS SEQE
Block function
Sequence Extension (SEQE) blocks are used to add any number of further steps to a sequence, up to eight per SEQE
block. Each SEQE block is linked to the preceding one (or main SEQ block) by entering its tagname in that block’s
Extend field.
SEQE block I/O connections are limited to the digital output and alarm fields; the others are made in the main SEQ block
itself. The SEQE block parameters have exactly corresponding functions and formats to those already described for the
SEQ block, see page 489.
Block parameters
Symbols used in Table 207 are explained in Table 1.
HA082375U003
Issue 33 August 2019 Page 494
TOTAL TIMING FUNCTION BLOCKS
Block function
Default Disable
Integrate
PV
/Scale /TimeBase
∑
+
Pulse
CutOff _ Init Accumulator
Pulse
Total OP
_
Overflow
Target +
Clear0v
Please refer to Figure 104. The Totalisation block integrates an analogue input PV, storing the result in the Total
parameter as an 8-digit integer, and also in floating-point format in the OP parameter. Scale specifies the size of the units
being integrated, and Timebase defines the PV and integration time units.
The block includes a low threshold PV cutoff with default totalisation, a pulse output for counters and analogue-to-
frequency conversion, a target overflow flag, and initialisation and disable inputs.
Block parameters
Symbols used in Table 208 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 495 Issue 33 August 2019
TIMING FUNCTION BLOCKS TOTAL
HA082375U003
Issue 33 August 2019 Page 496
DTIME TIMING FUNCTION BLOCKS
Block function
MaxDelay
Init
Newest Oldest
Data Data
Delay1
OP_1
Delay2
OP_2
Delay3
OP_3
Delay4
OP_4
Please refer to Figure 105. The Deadtime block introduces time delays into the measurement signal PV. The block buffer
contains 50 storage locations and 4 pointers for output extraction. At each sample update, a new measurement is inserted
and the oldest measurement is discarded. The buffer sample rate is calculated as MaxDelay/50, where MaxDelay is the
maximum delay time in seconds.
Each pointer can extract an output at any delay time up to MaxDelay. When the required point lies between two buffer
samples, the output is estimated by linear interpolation between the samples. Figure 106 shows as an example the
delayed outputs from a rectangular PV pulse input. The amount of ‘slowing’ of the output signals, due to the averaging
action between buffer points, depends on the value of MaxDelay.
The block is initialised via the Init parameter, which sets all elements equal to the current value of PV.
PV
OP_1
Delay1
OP_2
Delay2
OP_3
Delay3
OP_4
Delay4
TIME
HA082375U003
Page 497 Issue 33 August 2019
TIMING FUNCTION BLOCKS DTIME
Block parameters
Symbols used in Table 209 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 498
TIMER TIMING FUNCTION BLOCKS
Block function
Realtime
Clock
Increment
Freeze
Freeze
Hold
CurrTime
Zero
Reset
Out
Compare -1 Not_Out
EndTime
Please refer to Figure 107. The TIMER block is a resettable incremental ‘up’ timer, continuously outputting the current
time and setting digital flags on reaching a preset end time value, when the timing stops. A Hold digital input allows the
timer to be ‘frozen’. Seconds, minutes, or hours may be selected via the Timebase parameter.
Timing Precision. The precision of the current time output depends on the rate at which the block is being updated,
i.e. the scan time. At best, this is every 0.1 seconds, but for a medium-sized strategy (about 75 to 100 blocks) scan times
are nearer 0.2 to 0.3 seconds.
Block parameters
Symbols used in Table 210 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 499 Issue 33 August 2019
TIMING FUNCTION BLOCKS TIMER
Timebase. (Secs/Mins/Hours) Specifies the value of the timer units (i.e. of EndTime and CurrTime).
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
CurrTime. Current timer value, in units specified by Timebase. (See the EndTime section above.)
Out. Sets TRUE when the timed period has elapsed, and remains TRUE if endtime is increased, unless a reset is carried
out. Specifically, Out is FALSE when EndTime exceeds CurrTime, and TRUE otherwise.
NotOut. Sets FALSE when the timed period has elapsed, i.e. inverse of the Out parameter. Specifically, NotOut is
TRUE when EndTime exceeds CurrTime, and FALSE otherwise.
HA082375U003
Issue 33 August 2019 Page 500
TIMEDATE TIMING FUNCTION BLOCKS
Block function
TimeTick
DateTick
DayTick
Realtime
Clock CurrTime CurrDate CurrDay
DateOut
Compare
Date n (4 bits)
n = 1 to 4
DateRst (4
TimeOut
Compare bits)
Time n (8 bits)
n = 1 to 8
TimeRst
(8 bits)
Please refer to Figure 108. The Time/Date Event block acts as a clock/calendar, deriving the time, date and day from the
Realtime clock of the target instrument. It emits digital pulses (‘ticks’) at each time/date increment, as well as the current
weekday value. Weekends are specially indicated. The block also acts as a programmable ‘alarm clock’, setting output
bits (TimeOut and DateOut) when specified times and dates occur. Up to eight different event times and four event dates
can be programmed.
The system clock can be reset, as well as monitored, via the TIMEDATE block.
Block parameters
Symbols used in Table 211 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 501 Issue 33 August 2019
TIMING FUNCTION BLOCKS TIMEDATE
HA082375U003
Issue 33 August 2019 Page 502
TIMEDATE TIMING FUNCTION BLOCKS
Time1 to Time8. Eight independent programmable ‘alarm clock’ event times expressed as hr:min:sec. When one
of these times is reached, the corresponding TimeOut parameter bit is set TRUE.
TimeOut. Bitfield of eight bits, Time1out to Time8out. A bit sets when the system clock time equals the time specified
in the corresponding Time1 to Time8 parameter. TimeOut bits can be individually reset via the TimeRst parameter.
TimeRst. Bitfield of eight bits, Time1rst to Time8rst. When set from FALSE to TRUE, each bit resets the
corresponding TimeOut bit (Time1out to Time8out).
Alarms. See Appendix D page 545 for a general description of the Alarms field.
Software. Sumcheck error in block’s RAM data.
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
CurrDate. Current date indicated by system clock, in dd:mm:yy format. The system calendar can be reset via this
parameter.
CurrDay. (MONDAY/ TUESDAY/WEDNESDAY/THURSDAY/FRIDAY/SATURDAY/SUNDAY). Current
day, derived from the system calendar.
DateTick. Bitfield outputting pulses for each date increment (‘ticks’).
DayTick. Bit sets TRUE for one block update period, then returns to FALSE, when the day-value increments.
WeekTick. Bit sets TRUE for one block update period, then returns to FALSE, when the week-value
increments.
MnthTick. Bit sets TRUE for one block update period, then returns to FALSE, when the month-value
increments.
YearTick. Bit sets TRUE for one block update period, then returns to FALSE, when the year-value increments.
DayTick. Bitfield whose eight bits indicate the current day. The first seven bits indicate (TRUE) Monday to Sunday,
respectively, and the eighth ‘Weekend’ bit is TRUE on both Saturday and Sunday.
Date1 to Date4. Four independent programmable ‘alarm clock’ event dates expressed as dd:mm:yy. When one of
these dates is reached, the corresponding DateOut parameter bit is set TRUE.
DateOut. Bitfield of four bits, Date1out to Date4out. A bit sets when the system calendar date equals the date
specified in the corresponding Date1 to Date4 parameter. DateOut bits can be individually reset via the DateRst
parameter.
DateRst. Bitfield of four bits, Date1rst to Date4rst. When set from FALSE to TRUE, each bit resets the
corresponding DateOut bit (Date1out to Date4out).
HA082375U003
Page 503 Issue 33 August 2019
TIMING FUNCTION BLOCKS TPO
Block function
MinOnT MinOffT
Averaging/
Width Out
‘Ideal’ Accumulators Averaged
Internal Output
Waveform Waveform
Block -1 Not_Out
Period Update Rate
The Time-Proportioning Output block converts an analogue input (Width) into a rectangular wave digital output (Out),
with variable mark/space ratio proportional to the input. A typical application for the TPO block is where a continuous
analogue signal is to control power input to a process in which the power can only be ‘on’ or ‘off’, for example, in
electrical heating of furnaces.
Please refer to the schematic in Figure 109. The block generates an internal ‘ideal’ waveform having a period set by the
Period input, and a mark/space ratio set by the Width input. Specifically, Width is the percentage of the period that the
output is high (TRUE). See Figure 110.
Out = TRUE
Out = FALSE
Period
Minimum ‘On’ and ‘Off’ times. The ideal waveform generated by the block can be subjected to automatic
modification before being transmitted via the Out connection. This happens if the MinOnT or MinOffT inputs specify
minimum ‘on’ or ‘off’ times that conflict with the calculated ideal times. Minimum on/off times may be required when
plant could be damaged or destabilised by very short switching periods. The block algorithm resolves these conflicts by
holding the output ‘on’ or ‘off’ for longer than the ideal values, storing the resulting time-errors in accumulators so that
they can be applied in a subsequent period, see the Block specification menu section below for further details.
Output precision. The ideal waveform is also automatically adjusted whenever the calculated mark/space cannot
in practice be output precisely, because the block update rate is large compared with the TPO block period. In these cases
the algorithm averages the output over successive cycles. For example, with a Period of 1 second, Width of 25%, and
block update rate of 0.1 seconds, the block outputs alternate cycles of 0.2 and 0.3 seconds (to average 0.25 seconds).
HA082375U003
Issue 33 August 2019 Page 504
TPO TIMING FUNCTION BLOCKS
Block parameters
Symbols used in Table 212 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Page 505 Issue 33 August 2019
TIMING FUNCTION BLOCKS DELAY
Block function
MaxDelay
PV
50-SEGMENT DEADTIME BUFFER
Init
Hold
Newest Oldest
Data Data
Ratio1
OP_1
Ratio2
OP_2
Ratio3
OP_3
Ratio4
OP_4
Please refer to Figure 111. The DELAY block introduces time delays into the measurement signal PV. The block buffer
contains 50 storage locations and 4 pointers for output extraction. At each sample update the existing measurements all
move one location along the buffer, a new measurement is inserted, and the oldest measurement discarded. The buffer
sample rate is calculated as MaxDelay/50, where MaxDelay is the maximum delay time in seconds.
Each pointer can extract an output at any delay time up to 100% of MaxDelay. When the required point lies between two
buffer samples, the output is estimated by linear interpolation between the samples.
The block is initialised via the Init parameter, which sets all elements equal to the current value of PV. While the Hold
parameter is TRUE the block action is‘frozen’, i.e. data flow along the buffer halts and so outputs remain unchanged.
Block parameters
Symbols used in Table 213 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 506
DELAY TIMING FUNCTION BLOCKS
HA082375U003
Page 507 Issue 33 August 2019
TIMING FUNCTION BLOCKS RATE_ALM
_ TestBand
Compare
+ |PV - OP|
OP
PV
Delay OP
release
TimeBase dPV/dt SampTime
TestTime
Rate
Alarms
+
Compare Hysteresis UpAlm
RateUp _
Hyster OR RateAlm
+
Compare Hysteresis DownAlm
RateDown _
Please refer to the schematic in Figure 112. The RATE_ALM block monitors the rate of change of an analogue input
signal PV, and copies the signal to output OP. Should PV change at a rate that exceeds user-set limits, OP is held at PV’s
last ‘good’ (i.e. not in alarm) value and appropriate alarms trip.
The release of OP after a rate alarm clears is not immediate but occurs after a specified time period (TestTime), or when
PV returns to within a specified value (TestBand) of OP, whichever happens sooner. Status bit OPrelsd flags OP’s
release by setting TRUE for one task iteration only. Figure 113 and Figure 114 illustrate how OP, OPrelsd, and the rate
alarm bit RateAlm behave as dPV/dt goes in and out of limits.
Block parameters
Symbols used in Table 214 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
PV
OP
TRUE
RateAlm
FALSE
TestTime
TIME
HA082375U003
Issue 33 August 2019 Page 508
RATE_ALM TIMING FUNCTION BLOCKS
PV
Testband
OP
TRUE
RateAlm
FALSE
TIME
HA082375U003
Page 509 Issue 33 August 2019
TIMING FUNCTION BLOCKS RATE_ALM
HA082375U003
Issue 33 August 2019 Page 510
RATE_LMT TIMING FUNCTION BLOCKS
Block function
RateUp
RateDown DisRL
SelTrack
SelHold
Apply rate FALSE
PV limits FALSE
FALSE
TRUE OP
TRUE (Track)
TRUE (Hold)
Track
|PV - OP| _
Apply Compare OPeqPV
EqualBnd Hysteresis +
Track
Please refer to the schematic in Figure 115. The RATE_LMT block limits the rate of change of an output OP as it tries
to follow a dynamic ‘target value’ input PV. Both OP’s increase and decrease rates can be independently specified.
A status bit OPeqPV flags when OP becomes equal to PV to within a tolerance specified by EqualBnd, with an extra
hysteresis tolerance Hyst applied as the state of equality is left. Figure 116 shows how EqualBnd and Hyst are applied.
Note that the curve must be followed along the arrows and is not valid in the reverse direction.
PV - OP
PV > OP
Hyst
EqualBnd
PV = OP EQUAL
EqualBnd
Hyst
PV < OP
OPeqPV TRUE
FALSE
HA082375U003
Page 511 Issue 33 August 2019
TIMING FUNCTION BLOCKS RATE_LMT
Block parameters
Symbols used in Table 215 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 512
RATE_LMT TIMING FUNCTION BLOCKS
Combined. TRUE if any alarm is active in the block. Adopts the same status message and priority number as
the block’s highest priority active alarm.
RateUp. Rate limit applied to OP as it ramps up towards a higher-valued PV.
RateDown. Rate limit applied to OP as it ramps down towards a lower-valued PV.
TimeBase. (Secs/Mins/Hours). Specifies the time units used throughout the block.
Options. Bitfield selecting block operating modes. The mode actually operating is the one with highest priority.
SelTrack. TRUE selects Track mode.
SelHold. TRUE selects Hold mode.
DisRL. TRUE disables rate limiting in Auto mode, and OP tracks PV.
Status. Bitfield reporting block status.
OPeqPV. This bit is TRUE whenever OP equals PV within the tolerance specified by EqualBnd and subject to
hysteresis specified by Hyst. Otherwise OPeqPV is FALSE.
HA082375U003
Page 513 Issue 33 August 2019
TIMING FUNCTION BLOCKS TOT_CON
Block function
This block is intended as a placeholder for 32-bit parameter values, in particular when the values are acquired over a
Modbus link using the 2-register 32-bit number facility. Such large numbers are often generated by totalisation processes.
It has the same parameter complement as the TOTAL block, but with one extra field, UserAlrm. However, the
TOT_CON block has virtually no update routine, and most of its fields are general-purpose read/write data stores. The
block’s ‘dummy’ parameters can be used to hold totals and associated values for communication with other LIN nodes.
Because of their similar structures, TOT_CON and TOTAL blocks are cache-overlayable, i.e. either block can act as a
cached image of the other over the LIN communications. This can be useful in instruments that support TOTAL but not
TOT_CON blocks.
Block parameters
Symbols used in Table 216 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 514
TOTAL2 TIMING FUNCTION BLOCKS
Block function
CutOff _
Timer FlowTime
+
PV ≤ CutOff
Integrate
PV
/Scale
∑
Timebase
COP
CTotFrac
CTotal
Mode
+ CTotal > Target Rollover
_ CTotal
Calib
Target
_ Rollover
Normal NTotal > Target NTotal & Trip
Rollover
+ Alarm
NTotal
NPulseFct
NTotFrac
NOP
Please refer to Figure 117. In ‘Normal’ mode, the TOTAL2 block integrates an analogue input PV, storing the integer
part of the result in the NTotal parameter, the fractional part in NTotFrac, and the whole total in floating-point format in
NOP. These ‘normal’ totals are non-resettable. Scale specifies the size of the units being integrated, and Timebase
specifies the PV and integration time units.
The block includes a low threshold PV cutoff with zero default totalisation, a flow timer output FlowTime, a buffered
pulse output for counters, a rollover value (Target) and overflow flag (RollOver).
In ‘Calib’ (calibration) mode the scaled integrated PV is added to CTotal, CTotFrac, and COP instead of to the
corresponding ‘normal’ parameters. Entering calibration mode resets these totals, but not the normal totals.
The block provides calibration mode, low flow, and rollover alarms in addition to the usual software and combined
alarms.
HA082375U003
Page 515 Issue 33 August 2019
TIMING FUNCTION BLOCKS TOTAL2
Block parameters
Symbols used in Table 217 are explained in Table 1. Additional parameter information is given in the Block specification
menu section following.
HA082375U003
Issue 33 August 2019 Page 516
TOTAL2 TIMING FUNCTION BLOCKS
HA082375U003
Page 517 Issue 33 August 2019
CONTROL LOOP OPERATING MODES
HA082375U003
Issue 33 August 2019 Page 518
CONTROL LOOP OPERATING MODES
Fallback modes
The Fallback mode is the control mode that takes over from the currently active mode if all modes become deselected by
the SelMode bitfield, i.e. if all the bits go FALSE (SelMode = 00000000). This is not necessarily the same as the mode
that takes over if the currently active mode is deselected; that is determined by mode priorities.
Each control mode has its own specified Fallback mode (usually itself). Fallback modes are listed in the table above.
HOLD and TRACK are the only exceptions - when either of these becomes active the Fallback mode stays at its previous
value.
NOTE. If all the SelMode bits become zero simultaneously the resulting control mode that the loop ‘falls
back’ to is undefined. This is because in reality each bit is reset in a scanning order usually unknown to the
user, and so the very last currently active mode, and its Fallback, will be unpredictable.
Remote mode
Remote mode is unusual because it cannot become the active mode unless it is enabled (EnaRem = TRUE) as well as
being the current top priority selected mode (SelRem = TRUE). The modes that can be adopted by the loop as determined
by these two SelMode parameter bits are:
HA082375U003
Page 519 Issue 33 August 2019
CONTROL LOOP OPERATING MODES
∫
where: OP = controller output
XP = proportional band
TI = integral time constant
TD = derivative time constant
ER = error (PV–SP).
This equation may be rewritten in the Y(s) terminology of the Laplace transformation:
Limiting of the high frequency response introduces a digital limit filter, typically chosen to have a time constant equal to
a quarter of the derivative time. The complete transfer function is then.
∑ Δ
where (additionally):
Δ Δ Δ
FF = feed-forward term
OPn = controller output after n samples
ERn = value of error at sample n
ERr = value of error at sample r
ΔPVn = change in filtered process variable value between samples n and n–1
ΔPVn is obtained after first-order filtering with an effective time constant TD/4, thus:
where (additionally):
The process variable PV is itself a filtered version of a sampled analogue input value, MV:
where (additionally):
MVn = value of analogue input at sample n
TF = effective first-order time constant
IF = input channel filter constant.
NOTE. The FF offset is apparent at zero error under proportional-only control action with the integral term
disabled. This allows the output to respond to both positive and negative errors, if required.
HA082375U003
Issue 33 August 2019 Page 520
CONTROL LOOP OPERATING MODES
This can now be compared with the classical Y(s) version of the analogue controller shown in equation (2). The
proportional (P) and integral (I) terms are identical, but the derivative (D) term is slightly modified. This is because the
additional first-order filtering is applied to the derivative value DPV, rather than to the error directly.
NOTE. The response to local setpoint (SL) changes is determined by the value of the IntBalSL bit in the
control block’s Options parameter, which can be set to disable integral term balancing on SL changes.
Similarly, the IntBalXP bit determines the response to XP changes.
Integral balance is automatically done whenever the loop mode is changed to AUTO, REMOTE, or FORCED AUTO.
HA082375U003
Page 521 Issue 33 August 2019
CONTROL LOOP OPERATING MODES
Integral balance
Integral balance is applied to prevent abrupt changes - ‘bumps’ - in the output which might otherwise occur after control
mode changes, and step changes in certain control parameters (e.g. setpoint). Output bumps are undesirable because they
can damage valves and destabilise the process.
In essence, integral balance works by adjusting the integral accumulator (TS/TI.ERi) in the PID calculation to keep the
new output (almost) equal to the value it had before the triggering event. Mathematical details are given in a later section.
Effect of integral balance on dynamics
Figure 118 and Figure 119 show as an example the output (OP) and process variable (PV) responses to an abrupt setpoint
(SP) change, without and with integral balance being applied, respectively. In this case applying integral balance
markedly reduces the slope and peak value of the OP response, whilst at the same time bringing PV to the new SP just as
rapidly but with half the overshoot.
80% OP
SP PV
40%
0% TIME
80%
SP OP
PV
40%
0% TIME
Clearly, integral balance modifies the loop’s response to setpoint changes, and this must be considered when a loop is
being tuned using these changes. The response of a well-tuned loop with integral balance generally has less overshoot
than one without.
Conditions triggering integral balance application
Changing the local setpoint (SL) in AUTO mode. (Optional, via the control block’s Options.IntBalSL parameter).
Changing the proportional band (XP) in AUTO or REMOTE. (Optional, via the Options.IntBalXP parameter).
Changing operating mode to any automatic mode (AUTO, REMOTE, FORCED AUTO).
Inputting a rising edge to the IntBal bit of the PID block’s Options parameter.
HA082375U003
Issue 33 August 2019 Page 522
CONTROL LOOP OPERATING MODES
ER
0 TIME
OP
LIMIT OP
DEAD-TIME
LIMIT
UNLIMITED OP
NO INTEGRAL
DESATURATION
TIME
OP
LIMIT OP
LIMIT
UNLIMITED OP WITH
INTEGRAL DESATURATION
(SAWTOOTH)
TIME
Integral desaturation
With a persistent error (ER), the PID algorithm’s integral term (TS/TI.ERi) can accumulate a large value (‘integral term
wind-up’), which begins to reduce only after ER has reversed. When large enough the integral accumulator holds the
controller output against an output limit, and even whilst reducing it continues to do so for a further dead-time period until
it has emptied sufficiently. The upper part of Figure 120 shows this effect schematically.
Integral desaturation eliminates this dead-time, allowing the output to move away from the limit as soon as the error
reverses, and so avoids large PV overshoots. It does this by suspending integral action when an output limit is exceeded,
and ‘bleeding off’ the integral accumulator until the calculated PID output is back on limit. At this point normal integral
action is resumed. Integral desaturation is repeatedly activated if necessary to keep the output near the limit, until the
error reverses. This is shown schematically in the lower part of Figure 121.
In this example the control action is Integral only, for clarity. The ‘sawtooth’ effect in the unlimited output arises from
the repeated application of integral desaturation to bring it back to the limit. This is of course not seen in the limited
output passed on to the plant.
HA082375U003
Page 523 Issue 33 August 2019
CONTROL LOOP OPERATING MODES
Limit detection
Approach to a limit is detected by comparing (at each iteration) the calculated output value OP with the corresponding
feedback value FB, which has been limited in the manual station. If these differ by more than a small margin a limit is
judged to have been reached and integral desaturation starts. Figure 121 shows this schematically. (Mathematical details
are given later.)
PV
PID Calculation Manual
SP Control
Station Output
Integral Limiting
Desaturation
OP
On/Off +
Compare FB
-
The margin between OP and FB needed to trigger integral desaturation is very small (.006% approx.), so the feedback
signal should come directly from the manual station output whenever possible. FB can originate elsewhere provided
excessive time delays in the feedback loop are avoided. Delays longer than the sample time (TS) could cause the feedback
to differ from the last output enough to trigger unwanted integral desaturation, which would slow down the controller
action.
Effect of integral desaturation on dynamics
Figure 122 shows a more realistic example where integral desaturation is preventing excessive overshoot in a full PID
control application. For comparison, Figure 123 shows the same setup without integral desaturation.
PV
100% SP
50%
0% TIME
100%
OP
50% OUTPUT LIMIT (HIGH)
0% TIME
HA082375U003
Issue 33 August 2019 Page 524
CONTROL LOOP OPERATING MODES
100% PV
SP
50%
0% TIME
100%
UNLIMITED OP
0% TIME
Mathematical implementation
Definition of terms
OP = PID output
XP = Proportional band
ER = Error (PV–SP)
TS = Sample time (algorithm iteration period)
TI = Integral time constant
TD = Derivative time constant
FF = Feed-forward value
FB = Feedback value (normally FBn = OPn-1)
∑ Δ
The flow diagram in Figure 124 shows how integral balance and integral desaturation are actually applied in the PID
algorithm at each iteration. In the diagram, the proportional and derivative terms are combined for clarity into a single
term:
HA082375U003
Page 525 Issue 33 August 2019
CONTROL LOOP OPERATING MODES
To see the effect this has on the calculated output, this balanced In can be substituted into the equation defining OPn,
which gives the result:
that is,
OPn (balanced) = OPn-1 (limited) – integral increment
No
No
Re-Iterate
n=n+1
(Because of the way the algorithm is executed the feedback at the nth iteration, FBn, is derived from the output at the
previous iteration, OPn-1.) So balancing the integral term in this way results in the new output differing from the previous
(limited) output by the integral term increment only, with no contribution from the proportional or derivative terms.
HA082375U003
Issue 33 August 2019 Page 526
CONTROL LOOP OPERATING MODES
that is, by an amount proportional to FBn – OPn-1, the margin the calculated output is over limit. This causes the output
to approach the limit exponentially until the margin is small enough (<0.006% approx.) not to trigger integral
desaturation.
HA082375U003
Page 527 Issue 33 August 2019
THE LIN APPLICATION LAYER
Routing of messages
NETWORK around logical segments
of network
Bottom Layer
PHYSICAL Cables, connections, physical
circuits, LIN redundancy,
Algorithum,
LIN Cables
The LIN (Local Instrument Network) is a complex system in its entirety, but it can be broken down into simpler ‘layers’.
Each layer is essential to the correct operation of the LIN communications, with the upper layers relying on the correct
working of the lower layers for normal operation. Figure 125 schematises these layers and summarises their functions.
This appendix concentrates on the top (Application) layer of the model, using a series of diagrams to explain
schematically what happens when example function blocks are cached across the LIN to allow communications between
them. The steps being illustrated are:
1. Configuring a cached block - the initial steps (Figure 126)
2. Block-caching at runtime (Figure 127)
3. Caching a second block between the same databases (Figure 128)
4. Caching another block in the opposite direction (Figure 129)
5. Caching blocks between three nodes (Figure 130).
HA082375U003
Issue 33 August 2019 Page 528
THE LIN APPLICATION LAYER
NodeNo : 80 Node
NodeName : EYCON_80
LEDB
Database
LIN
NodeNo : 20
NodeName : T2550_20
HA082375U003
Page 529 Issue 33 August 2019
THE LIN APPLICATION LAYER
2 BLOCK-CACHING AT RUNTIME
Figure 127 shows what happens when the configured databases are running.
The T2550 database receives a request from the EYCON to cache block LIC001. The T2550 responds by creating an
REDB (Remotely Requested External Database) table entry and a Featt (From External Attachment) in its database.
These structures allow data to flow from the ‘real local’ LIC001 block to its remote cached ‘image’ in the EYCON.
NodeNo : 80 Node
NodeName : EYCON_80
Teatt
LEDB
Database
LIN
Dataflow
NodeNo : 20
NodeName : T2550_20
HA082375U003
Issue 33 August 2019 Page 530
THE LIN APPLICATION LAYER
NodeNo : 80
NodeName : EYCON_80
LEDB
LIN
Dataflow
NodeNo : 20
NodeName : T2550_20
HA082375U003
Page 531 Issue 33 August 2019
THE LIN APPLICATION LAYER
NodeNo : 80
NodeName : EYCON_80
LEDB
LIN
Dataflow
NodeNo : 20
NodeName : T2550_20
HA082375U003
Issue 33 August 2019 Page 532
THE LIN APPLICATION LAYER
NodeNo : 60 NodeNo : 80
NodeName : T2550_60 NodeName : EYCON_80
LEDB LEDB
LIN
Dataflow Dataflow
NodeNo : 20
NodeName : T2550_20
Caching LIC001 in two
different places creates two
Featts at runtime in the REDB LEDB
blocks local (T2550_20)
database, one for each Teatt
cached ‘image’. Featt Featt Featt
HA082375U003
Page 533 Issue 33 August 2019
OBSOLETE PRODUCT SUPPORT
HA082375U003
Issue 33 August 2019 Page 534
Block categories INTRODUCTION
HA082375U003
Page 535 Issue 33 August 2019
INTRODUCTION Block categories
HA082375U003
Issue 33 August 2019 Page 536
Block categories INTRODUCTION
HA082375U003
Page 537 Issue 33 August 2019
INTRODUCTION Block categories
HA082375U003
Issue 33 August 2019 Page 538
Block categories INTRODUCTION
HA082375U003
Page 539 Issue 33 August 2019
INTRODUCTION Block categories
HA082375U003
Issue 33 August 2019 Page 540
Block categories INTRODUCTION
HA082375U003
Page 541 Issue 33 August 2019
INTRODUCTION Block categories
HA082375U003
Issue 33 August 2019 Page 542
COMMON FIELD PARAMETERS
This Appendix also contains information about Filepaths that are defined as parameters in the following blocks:
BAT_CTRL, BATCHCONTROL, PROGCTRL, RECORD, and SFC_CON.
Filepath parameter Page 547
HA082375U003
Page 543 Issue 33 August 2019
COMMON FIELD PARAMETERS
Note: A Strategy cannot be saved unless the TagName has been entered for all blocks in the LIN Database.
Type. This read-only field shows the Template Function block category mnemonic, e.g. ANIN, PID, SIM, etc.
which also appears as a label on the block icon, above its Tagname. This corresponds to the various chapters in this
manual.
Task. This is used to define the Task number on which this block will be run. It corresponds to a specific repeat
rate, defined by the Period ms field. All blocks operating on this Task number will be updated at the intervals
defined by the Period ms parameter. Task numbers are not used on the Eycon™ 10/20 Visual Supervisor.
LIN Name, DBase, Rate. These are LIN Database related parameters used to control the communications between
LIN Instruments.
LIN Name. This shows the maximum 8-character unique network LIN Name of the block for identification via
the LIN. The unique network LIN Name can be derived from TagName or be entirely different by changing the Tag
settings configuration using View > Options > Settings > Tags in LINtools Engineering Studio.
DBase. (Local/Layer/Remote) This is used to define the location of the LIN Database that any block, other
than the Header block, will run, local or cached. A cached block is a local ‘image’ of a remote block, i.e. a block
running in another instrument on the LIN, that allows interaction with the remote block.
Note: In a cached block, Dbase specifies the name of the remote LIN Database containing the ‘real’ block.
The Local option indicates that this block will operate in the LIN Database in this Instrument, e.g. an Eycon™ 10/20
Visual Supervisor or T2550. The Layer option indicates that the block is local to the base.dbf in this LIN Database,
but is on another layer and only referenced to make connections. The Remote option indicates that this block
operates in a LIN Database in a LIN Instrument at a different LIN Node address. It is referenced to provide access
to field values and make connections. When selected, Dbase and Node Address parameters become available.
Rate. This is used to defined the minimum update rate (cycle time in milliseconds) of a single or group of remote
(cached) function blocks, at which an individual cached block is transmitted across the LIN. The default is 10ms
minimum, i.e. 100Hz maximum. Rate can be set between 10ms and 64s. These rate values are minimum update
times only, and heavily loaded networks may not be able to reach the faster update rates.
Note: For the system to run correctly, a database of the selected name must reside at the specified node, and must
contain a corresponding real block of the same type as the local cached block.
HA082375U003
Issue 33 August 2019 Page 544
COMMON FIELD PARAMETERS
ALARMS.
This field displays the name of the highest priority alarm which is either active and/or unacknowledged.
Alarms can also be subject to a suppression condition, refer to the Alarm Suppression User Guide, HA030272. An alarm
which is suppressed masks the active status.
The Alarms field also accesses a window* with three columns - Name, Value, and Priority. The Name column lists the
names of all the block alarms, e.g. Software, Hardware, etc. The Value column displays for each current alarm condition
a message dependant upon ‘Alarm Priority Number’ setting as follows, ‘In Ack’, ‘In Unack’ or ‘Out UnAck’ where ‘In’
indicates an active Alarm condition and ‘Out UnAck’ indicates an Alarm that has cleared awaiting Acknowledgement.
By ‘right-clicking’ in this field, unacknowledged Alarms can be Acknowledged. The Priority column shows the user-
specified priority number for each alarm and is the only read/write field in the Alarms window.
Alarm Priority Number. There are four types of alarm priority. Priority 0, the lowest priority, switches the alarm off.
Priorities 1 to 5 specify ‘self-acknowledging’ alarms. For these, the ‘In Ack’ message appears when the alarm condition
occurs, and disappears when the alarm has cleared without the need to acknowledge the alarm. Priorities 6 to 15 specify
‘acknowledging’ alarms. For these the ‘In UnAck’ message appears when the alarm condition occurs. To acknowledge
the alarm, ‘right-click’ in the field and select ‘Acknowledge’ from the drop down menu and the field now displays ‘In
Ack’. When the alarm condition clears the ‘In Ack’ message disappears. However, if the alarm condition clears and the
Alarm has not been acknowledged (‘In UnAck’), the ‘Out UnAck’ message appears indicating that the Alarm has cleared
but is awaiting acknowledgement. Priorities 11 to 15 for certain legacy instruments set a special bit in the Configuration
(Header) block and activate a hardware alarm relay. (Not supported in current instruments.)
*NOTE In instruments without integral displays, the Alarms window can be seen using the Terminal Configurator
attached to the instrument via Ethernet (ELIN), via a block cached in a display-type instrument (e.g. Eycon™
10/20 Visual Supervisor) or via the LIN on a PC running LINtools’ ‘Connect’ facility.
Software. All LIN function blocks have a Software (and a Combined) alarm, as a minimum and cannot be
suppressed. A Software alarm (default priority 1) is generated upon checksum failure in a block, i.e. corruption of
its database. For cached, S6000, and TAN blocks, failure of communications to the principal block also activates
the alarm.
Hardware. A hardware alarm is generated when any of the bits in the Status parameter are set, e.g. in the event
of a power interruption, incorrect module type, hardware alarm generated by any of the fitted I/O modules, etc.
A hardware alarm also causes the respective I/O module LED to turn off, located at the top of each module. Also
any other relevant LEDs fitted to a module will also indicate a Hardware fault condition, e.g. AI2 module.
Alarm Suppression. All Alarms (except software and combined) can be subjected to Alarm Suppression
functionality as appropriate. For further information see the Alarm Suppression User Guide, HA030272.
Combined. All blocks have a Combined (and a Software) alarm, as a minimum. A Combined alarm is
generated as a copy of the most significant alarm in the block and inherits the same Value message and Priority
number.
HA082375U003
Page 545 Issue 33 August 2019
COMMON FIELD PARAMETERS
4. If there is more than one Alarm (Acknowledged or Unacknowledged) with the same priority number, then the
lowest numbered alarm (highest/first position in the alarms field list of names) is chosen.
Modern - any current active alarms are chosen in preference to unacknowledged alarms. Thus, the ordering for
determining the combined alarm is:
1. Any active alarm is chosen in preference to one that is no longer active.
2. If there is more than one alarm in step 1 above, then the alarm with the highest priority number is chosen.
3. For active alarms only, if there is more than one, then alarms that are currently unacknowledged are chosen in
preference to those Alarms which have been acknowledged.
4. If there is more than one Alarm (Acknowledged or Unacknowledged) with the same priority number, then the
lowest numbered alarm (highest/first position in the alarms field list of names) is chosen.
If the _system.opt file contains the COMBINED_ALARM_METHOD keyword set to a value of 1, the Modern method
of determining the combined alarm is used. If the COMBINED_ALARM_METHOD keyword has a value of 0, or the
does not appear in the _system.opt file at all, then the legacy method is used.
The Instrument Options Editor can be used to modify the status of the COMBINED_ALARM_METHOD by toggling
the check box for the Combine active alarms field in the Startup tab. If ticked, the Modern method of active alarms having
higher priority than unacknowledged alarms is used. If un-ticked, the legacy method of unacknowledged alarms having
higher priority over active alarms is used.
HA082375U003
Issue 33 August 2019 Page 546
COMMON FIELD PARAMETERS
FILEPATH PARAMETER
The Filepath field exists in the BAT_CTRL, BatchControl, PROGCTRL, RECORD and SFC_CON block types. It is
always paired with a field called Filename. When concatenated together <Filepath>:<Filename> provide a full path to a
file which the block will either load or save depending on other actions taken in the block context.
In many cases Filepath can be left blank – in this case the file is accessed via the ‘default drive’ which in all current LIN
instruments is the ‘E:’ drive.
Note: LIN filing does not support the concept of directories – hence the file will always be in the root of the specified
path.
Node Address
The node address is a four-digit hexadecimal representation of the LIN ‘node number’.
On many products the LIN node number is set via an eight-way DIP switch somewhere on the device – this equates to
only two hexadecimal digits. If the LIN node number is ‘XY’ the four-digit hexadecimal representation should be
‘0XXY’ (that is, the 2nd & 3rd digits should be the same). This four digit representation is known as ‘16-bit addressing’.
The 16-bit version of addressing was introduced in the early 1990s when the T221 (OLIN/ALIN) bridge was released.
Instruments supporting only OLIN comms (identifiable via the thick coax comms cable) only support the eight-bit
version of addressing. OLIN-only instruments include the T100, T1000, T231. These older products used a two-digit
hexadecimal representation of the node address in the filepath field.
The 16-bit addressing was introduced to allow for the possibility of an increased address space – although this has never
been implemented.
Drive Letter
The drive letter must be in the range ‘A’ to ‘Z’ (uppercase). It must also be a valid drive letter for the target device. All
LIN instruments support ‘E’ as their default drive. Other drive letters are supported on different devices (for example, if
a USB stick is inserted into the T2750, this is assigned ‘B’ as the drive letter).
The most common example of a drive letter reference is thus ‘E:’
HA082375U003
Page 547 Issue 33 August 2019
Index
LIN BLOCKS REFERENCE MANUAL
Symbols Alarm
Acknowledging .............................................................545
.asc file ................................................................................... 428
Area .................................................................................423
.ASn to .A99 .................................................................. 428
Collection block ...........................................................483
.bmp file ................................................................................ 233
Functionality .................................................................545
.cpf file ........................................................ 128, 132, 133, 139
History diagnostic block ............................................212
.dbf file ....................................................54, 59, 120, 124, 134
Point Block ....................................................................473
.gsd file ..................................................................................... 61
Priority Numbers .........................................................545
.gwf file ..............................................................................47, 61
Suppression ...................................................................545
.Lnn file .................................................................................. 122
UnSupAll (Tactician) ...........................................133
.pkd file .................................................................................. 428
UnSupAll (Visual Supervisor) ...........................138
.PKn to .P99 .................................................................. 428
ALC block ...............................................................................483
.rcd file ..................................................................................... 28
ALH_DIAG block ..................................................................212
.run file ........................................................ 121, 124, 132, 137
ALIN ................................................................................227, 291
.sbf file ............................................................................ 20, 138
Network ................................................................125, 127
.spp file .................................................................................. 443
Node address ................................................................125
.sto file ................................................................. 397, 399, 401
ALINDIAG block ...................................................................213
.tpf file .................................................................................... 126
AMC_DIAG block ................................................................214
.txt file ...................................................................................... 34
American Gas Association Report #8 Data block ......... 88
.udb file ......................................................................... 126, 133
AN_ALARM block ................................................................. 75
.uhh file .................................................................................. 428
Analogue data block ...........................................................180
.upb file .................................................................................... 55
Analogue input block .......................................304, 334, 344
.uyb file ..............................................................................36, 40
Analogue input calibration block ...................................325
.uyr file ..................................................................................... 34
Analogue input/output calib block ................................348
.uyt file .......................................................................... 233, 433
Analogue inversion block .................................................... 68
.uyy file ................................................................................... 445
Analogue output block ......................................................344
Numerics Analogue output calibration block ................................329
AN_CONN block ...............................................120, 154, 158
2OF3VOTE block ................................................................. 484 AND block .............................................................................382
32-bit parameter values .................................................... 514 AND4 block ...........................................................................382
3_TERM block ......................... 162, 163, 168, 172, 176, 178 AN_DATA block .................................................................... 94
4-channel ANIN block ............................................................................154
digital pulse block ....................................................... 319 AN_IP block ..........................................................................304
8-channel ANMS block ..........................................................................148
digital input block ....................................................... 313 AN_OUT block ............................................................310, 329
digital output block .................................................... 316 AO_CALIB block .........................................................310, 329
AO_UIO block ......................................................................344
A Application layer ..................................................................528
ACT_2A2W3T block ........................................................... 401 Application master comms diagnostic block ...............214
Action ..................................................................................... 399 Archive medium .........................................................427, 467
ACTION block ............................................................. 397, 399 AREA block .................................................406, 421, 422, 423
Action Block with Gated Downtimers block ............... 401 Area Overview user screen ...............................................423
Action qualifier ........................................................... 397, 400 Audit Trail .....................................................................253, 254
Active control mode .......................................................... 519 Auditor ...................................................................................137
Adaptive gain control ........................................................ 523 Auto mode ...................................................................266, 519
ADD2 block ........................................................................... 393
AGA8 diagnostic block ...................................................... 210
AGA8DATA block ...................................................84, 88, 210
AGA8DIAG block ................................................................. 210
AI_CALIB block ........................................................... 306, 325
AI_UIO block ............................................................... 186, 334
HA082375U003
Page 548 Issue 33 August 2019
Index INTRODUCTION
HA082375U003
Page 549 Issue 33 August 2019
Index INTRODUCTION
HA082375U003
Issue 33 August 2019 Page 550
Index INTRODUCTION
HA082375U003
Page 551 Issue 33 August 2019
Index INTRODUCTION
HA082375U003
Issue 33 August 2019 Page 552
Index INTRODUCTION
HA082375U003
Page 553 Issue 33 August 2019
Index INTRODUCTION
HA082375U003
Issue 33 August 2019 Page 554
Index INTRODUCTION
U
UCHAR block ............................................... 70, 118, 307, 342
UINTENUM block ................................................................ 204
UnSupAll ....................................................................... 133, 138
User Screen Editor .............................................................. 406
Area/Group/Point agent ............................................ 406
Built-in agents .............................................................. 406
User Screens ................................................................. 436
User Task diagnostic block ............................................... 299
USERTASK block .................................................................. 299
V
Valve Positioner block ....................................................... 376
Video data recorders ......................................................... 467
Visual Supervisor agents ................................................... 406
VP_UIO block ....................................................................... 376
HA082375U003
Page 555 Issue 33 August 2019
Rear Cover (Master)
Eurotherm Ltd
Faraday Close
Durrington
Worthing
West Sussex
BN13 3PL
Phone: +44 (0) 1903 268500
www.eurotherm.co.uk
Schneider Electric, Life Is On, Eurotherm, EurothermSuite, Wonderware, InTouch, eCAT, EFit, EPack, EPower,Eycon,
Eyris, Chessell, Mini8, nanodac, optivis, piccolo, and versadac are trademarks of Schneider Electric SE, its subsidiaries
and affiliated companies. All other trademarks are the property of their respective owners.