Ib 1800R App PDF

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 152

MOD 30ML™ Functions Data Base Reference

Display, Alarm and Built-in I/O Functions for


1800P - MOD 30ML™ Identity Module (Version 2)
MicroMod Automation, Inc.

The Company

MicroMod Automation is dedicated to improving customer efficiency by providing the most cost-effective, application-specific process solutions
available. We are a highly responsive, application-focused company with years of expertise in control systems design and implementation.

We are committed to teamwork, high quality manufacturing, advanced technology and unrivaled service and support.

The quality, accuracy and performance of the Company's products result from over 100 years experience, combined with a continuous
program of innovative design and development to incorporate the latest technology.

Use of Instructions
Ì Warning. An instruction that draws attention to the risk of  Note. Clarification of an instruction or additional
injury or death. information.

q Caution. An instruction that draws attention to the risk of i Information. Further reference for more detailed
the product, process or surroundings. information or technical details.

Although Warning hazards are related to personal injury, and Caution hazards are associated with equipment or property damage, it
must be understood that operation of damaged equipment could, under certain operational conditions, result in degraded process
system performance leading to personal injury or death. Therefore, comply fully with all Warning and Caution notices.

Information in this manual is intended only to assist our customers in the efficient operation of our equipment. Use of this manual for
any other purpose is specifically prohibited and its contents are not to be reproduced in full or part without prior approval of MicroMod
Automation, Inc.

Licensing, Trademarks and Copyrights


MOD 30 and MOD 30ML are trademarks of MicroMod Automation, Inc.
MODBUS is a trademark of Modicon Inc.

Health and Safety


To ensure that our products are safe and without risk to health, the following points must be noted:

The relevant sections of these instructions must be read carefully before proceeding.
1. Warning Labels on containers and packages must be observed.
2. Installation, operation, maintenance and servicing must only be carried out by suitably trained personnel and in accordance with the information
given or injury or death could result.
3. Normal safety procedures must be taken to avoid the possibility of an accident occurring when operating in conditions of high
4. pressure and/or temperature.
5. Chemicals must be stored away from heat, protected from temperature extremes and powders kept dry. Normal safe handling procedures must be
used.
6. When disposing of chemicals, ensure that no two chemicals are mixed.

Safety advice concerning the use of the equipment described in this manual may be obtained from the Company address on the back
cover, together with servicing and spares information.

All software, including design, appearance, algorithms and source


codes, is copyrighted by MicroMod Automation, inc. and is owned by
MicroMod Automation or its suppliers.
MOD 30ML Data Base Reference

CONTENTS

CONTENTS
Page
SECTION 1 - INTRODUCTION
1.1 GENERAL ............................................................................................................................. 1-1
1.2 OVERVIEW OF INSTRUMENT SOFTWARE ...................................................................... 1-1
1.3 DATA BASE CONFIGURATION AND RUNTIME SUPPORT.............................................. 1-1
1.4 RELATED DOCUMENTATION............................................................................................. 1-2
1.5 VERSION IDENTIFICATION ................................................................................................ 1-2

SECTION 2 - DATA BASE PARAMETERS


2.1 MOD 30ML FUNCTION BLOCKS ........................................................................................ 2-1
2.2 DISPLAY BLOCK (DISP) ...................................................................................................... 2-3
2.2.1 Display Block Operation .................................................................................................... 2-4
2.2.2 Display Block Parameters ................................................................................................. 2-5
2.2.3 Display Block Configuration Screens ................................................................................ 2-7
2.2.4 Typical Block Connections for Display Block .................................................................... 2-22
2.2.5 Display Block Events ......................................................................................................... 2-22
2.2.6 Display Block Compile Errors ............................................................................................ 2-23
2.3 DISPLAY INTERFACE BLOCK (DIF) .................................................................................. 2-25
2.3.1 Display Interface Block Operation ..................................................................................... 2-25
2.3.2 Display Interface Block Parameters .................................................................................. 2-26
2.3.3 Display Interface Block Configuration Screens ................................................................. 2-32
2.3.4 Display Interface Block Events .......................................................................................... 2-36
2.3.5 Typical Block Connections for Display Interface Block ..................................................... 2-38
2.4 STATE TABLE BLOCK (ST)................................................................................................. 2-39
2.4.1 State Table Block Parameters........................................................................................... 2-39
2.4.2 State Table Block Configuration Screens.......................................................................... 2-40
2.5 TUNE LIST BLOCK (TL)....................................................................................................... 2-43
2.5.1 Tune List Block Parameters .............................................................................................. 2-43
2.5.2 Tune List Block Configuration Screens ............................................................................. 2-44
2.5.3 Typical Block Connections for Tune List Block ................................................................. 2-48
2.6 PROCESS ALARM DISPLAY BLOCK (PAD)....................................................................... 2-49
2.6.1 Process Alarm Display Block Operation............................................................................ 2-50
2.6.2 Process AlarmDisplay Block Parameters.......................................................................... 2-52
2.6.3 Process AlarmDisplay Block Configuration Screens......................................................... 2-57
2.6.4 Typical Block Connections for Process Alarm Display Block............................................ 2-62
2.6.5 Process AlarmDisplay Block Events ................................................................................. 2-62
2.7 BUILT-IN ANALOG INPUT BLOCK (AIN) ............................................................................ 2-63
2.7.1 Built-In Analog Input Block Operation ............................................................................... 2-63
2.7.2 Built-In Analog Input Block Parameters............................................................................. 2-65
2.7.3 Typical Block Connections for Built-In Analog Input Block................................................ 2-74
2.7.4 Built-In Analog Input Block Events .................................................................................... 2-75
2.8 BUILT-IN ANALOG OUTPUT BLOCK (AOUT) .................................................................... 2-77
2.8.1 Built-In Analog Output Block Operation............................................................................. 2-80
2.8.2 Built-In Analog Output Block Parameters.......................................................................... 2-81
2.8.3 Typical Block Connections for Built-In Analog Output Block............................................. 2-86
2.8.4 Built-In Analog Output Block Events.................................................................................. 2-86

i
MOD 30ML Data Base Reference

CONTENTS

CONTENTS (Cont’d)
Page
SECTION 3 - CONFIGURATION EXAMPLES
3.1 GENERAL.............................................................................................................................. 3-1
3.2 GETTING STARTED USING THE VIZAPP SOFTWARE..................................................... 3-1
3.3 CONFIGURATION EXAMPLES USING THE APPLICATION BUILDER SOFTWARE........ 3-26
3.3.1 GETTING STARTED USING THE APPLICATION BUILDER SOFTWARE......................... 3-26
3.3.2 BASIC PID&DSP (PID WITH DISPLAY) COMPOUND ........................................................ 3-29
3.3.3 PID Display Configuration Overview.................................................................................. 3-29
3.3.4 PID Display Configuration Procedure ................................................................................ 3-30
3.3.5 TOTALIZER COMPOUNDS .................................................................................................. 3-33
3.3.6 Configuration Overview...................................................................................................... 3-33
3.3.7 PIDTOT1.CSM - Totalizer and PID.................................................................................... 3-33
3.3.8 PIDTOT2.CSM - Totalizer and PID with Separate Commands Menu ............................... 3-36
3.3.9 CAS&DSP (CASCADE WITH DISPLAY) COMPOUND ....................................................... 3-38
3.3.10 Configuration Overview...................................................................................................... 3-38
3.3.11 Configuration Procedure .................................................................................................... 3-39
3.3.12 COLD JUNCTION COMPENSATION (CJC) COMPOUND.................................................. 3-42
3.3.13 Configuration Overview...................................................................................................... 3-42
3.3.14 Configuration Procedure .................................................................................................... 3-43

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

APPENDIX B - DISPLAYED CHARACTER SET

ILLUSTRATIONS
Figure Page
2-1 Display Resources................................................................................................................. 2-3
2-2 Display Block (DISP), Edit display, page 1............................................................................ 2-7
2-3 Standard ASCII Character Set and Equivalent Display Characters...................................... 2-8
2-4 Display Block (DISP), Edit display, page 2............................................................................ 2-9
2-5 Display Block Inputs, Edit display, page 1............................................................................. 2-10
2-6 Display Block Formats, Edit display, page 1 ......................................................................... 2-12
2-7 Display Script Editing using Text Editor ................................................................................ 2-15
2-8 Display Block, Typical Block Connections ............................................................................ 2-23
2-9 Display Interface Block (DIF), Edit display, page 1 ............................................................... 2-32
2-10 Display Interface Block (DIF), Edit display, page 2 ............................................................... 2-34
2-11 Display Interface Block Display Listing using Text Editor ..................................................... 2-35
2-12 Display Interface, Typical Block Connections ....................................................................... 2-38
2-13 State Table Block (ST), Edit display...................................................................................... 2-40
2-14 State Table Block State Tables using Text Editor ................................................................. 2-41
2-15 Tune List Block (TL), Edit display.......................................................................................... 2-44
2-16 Tune List Inputs, Edit display, page 1 ................................................................................... 2-44
2-17 Tune List Formats, Edit display, page 1 ................................................................................ 2-46
2-18 Tune List, Typical Block Connections ................................................................................... 2-48
2-19 Process Alarm Display Block, Functional Block Diagram ..................................................... 2-49

ii
MOD 30ML Data Base Reference

CONTENTS

ILLUSTRATIONS (Cont’d)
Figure Page
2-20 Example of Process Alarm Tripping (Floating Point Data) ................................................... 2-51
2-21 Process Alarm Display Block (PAD), General Page............................................................. 2-57
2-22 Process Alarm Display Block (PAD), Display Page.............................................................. 2-59
2-23 Examples of Bar Displays for Alarms ................................................................................... 2-60
2-24 Process Alarm Display, Typical Block Connections ............................................................. 2-62
2-25 Built-In Analog Input (AIN) Block, Functional Block Diagram ............................................... 2-64
2-26 Built-In Analog Input (AIN), Edit display................................................................................ 2-65
2-27 Built-In Analog Input, Typical Block Connections ................................................................. 2-74
2-28a Built-In Analog Output (AOUT) Block, Functional Block Diagram ........................................ 2-77
2-28b Built-In Analog Output (AOUT) Block, Functional Block Diagram ........................................ 2-78
2-29a Built-In Analog Output (AOUT), Edit display......................................................................... 2-79
2-29b Built-In Analog Output (AOUT), Edit display......................................................................... 2-79
2-30 Built-In Analog Output, Typical Block Connections .............................................................. 2-86
3-1 ViZapp Configurator .............................................................................................................. 3-1
3-2 File – New ............................................................................................................................. 3-2
3-3 New Project........................................................................................................................... 3-2
3-4 New Project........................................................................................................................... 3-3
3-5 New Project........................................................................................................................... 3-3
3-6 Class Workspace .................................................................................................................. 3-4
3-7 New Document...................................................................................................................... 3-5
3-8 Instrument Versions .............................................................................................................. 3-6
3-9 Default Instrument Database ................................................................................................ 3-6
3-10 IF Block ................................................................................................................................. 3-7
3-11 Algorithms Menu ................................................................................................................... 3-8
3-12 Loop Compound Properties .................................................................................................. 3-8
3-13 Loop Compound Properties .................................................................................................. 3-9
3-14 Loop Block ............................................................................................................................ 3-9
3-15 Loop Block ............................................................................................................................ 3-10
3-16 Accessing the Compound Gallery ........................................................................................ 3-11
3-17 Compound Library ................................................................................................................ 3-11
3-18 Loaded Compound ............................................................................................................... 3-12
3-19 Loaded ML_PID Compound ................................................................................................. 3-13
3-20 VCI Block Properties ............................................................................................................. 3-14
3-21 PID Block Properties ............................................................................................................. 3-15
3-22 PID Block Properties – Setpoint Tab .................................................................................... 3-16
3-23 Display Block Properties – Formats tab................................................................................ 3-17
3-24 Display Block Properties – Formats tab................................................................................ 3-18
3-25 Display Block Properties – Formats tab................................................................................ 3-19
3-26 PAD Block Properties ........................................................................................................... 3-20
3-27 PAD Block Properties ........................................................................................................... 3-21
3-28 Display Block Properties ....................................................................................................... 3-22
3-29 Close Loop compound .......................................................................................................... 3-23
3-30 DIF Block Properties ............................................................................................................. 3-23
3-31 Instrument Compile ............................................................................................................... 3-24
3-32 Compile Setup....................................................................................................................... 3-24
3-33 Information Window .............................................................................................................. 3-25
3-34 Workspace Displays Appearing During Configuration.......................................................... 3-28
3-35 PID with Display Compound Blocks ..................................................................................... 3-29
3-36 Totalizer 1 Compound .......................................................................................................... 3-34
3-37 Totalizer 2 Compound .......................................................................................................... 3-36
3-38 Cascade with Display Compound Blocks ............................................................................. 3-39
3-39 Cold Junction Compensation Compound Blocks ................................................................. 3-42

iii
MOD 30ML Data Base Reference

CONTENTS

TABLES
Table Page
2-1 Display Block Attributes,Valid Values,Mnemonics, and Data Types .................................... 2-5
2-2 Display Block Display Formats, Supported Types and Active Fields.................................... 2-14
2-3 Display Interface Block Attributes,Valid Values,Mnemonics, and Data Types ..................... 2-26
2-4 State Table Block Attributes,Valid Values,Mnemonics, and Data Types.............................. 2-39
2-5 Tune List Block Attributes,Valid Values,Mnemonics, and Data Types ................................. 2-43
2-6 Tune List Block Display Formats, Supported Types and Active Fields................................. 2-47
2-7 Process Alarm Display Block Attributes,Valid Values,Mnemonics, and Data Types............ 2-52
2-8 Process Alarm Display Block Display Formats, Supported Types and Active Fields ........... 2-61
2-9 Built-In Analog Input Block Attributes,Valid Values,Mnemonics, and Data Types................ 2-65
2-10 Equations for Calculation of Field result Values Using Inputs B0, B1, B2 and B3................ 2-73
2-11 Built-In Analog Output Block Attributes,Valid Values,Mnemonics, and Data Types............. 2-81
A-1 Assignment Statement Results of Type ‘srcname1 = srcname2’ ......................................... A-1
A-2 Assignment Statements of Type 'display_resource = source_name' ................................... A-4
A-3 Assignment Statements of Type 'display_resource = constant’............................................ A-6
A-4 Assignment Statements of Type 'display_resource.SRC = srcname'................................... A-7

iv
MOD 30ML Functions

INTRODUCTION

SECTION 1
INTRODUCTION

1.1 GENERAL
This document includes database reference information and application examples to aid in
configuring a MOD 30ML Controller using the Visual Application Designer (ViZapp). Information
on database organization, database memory block structures and the logic control portion of this
controller is described in other database reference books as described in Section 1.4. The user
of this document should be familiar with the architecture of the MOD 30ML Controller,
configuration capabilities, and message handling capabilities using either the Instrument
Communications Network (ICN) or the Modbus Protocol. For users developing their own runtime
interface, this document includes attribute numbers and data value number information.

1.2 OVERVIEW OF INSTRUMENT SOFTWARE


The MOD 30ML Controller is an intelligent data acquisition and control device with a
configurable display of six lines, three bars and up to four segments per bar. This instrument
consists of a central processor that communicates to highly modular process I/O and
communications modules. User integration of analog and discrete signal conditioning is
provided on a point-by-point basis. This unique modularity permits the product to be
configured with just the functionality that is required for each application. In addition to the
display formatting capabilities, this identity module provides logic, sequential and regulatory
control functionality. Functionality within this identity module supports basic analog and
digital I/O with filtering and linearization, system interface consistent with MOD 30
instruments, timers, process alarms, supervisory message handling, evaluation of event
equations and PID block functions.

1.3 DATABASE CONFIGURATION AND RUNTIME SUPPORT


ViZapp is used to configure the database
through a Modbus or Instrument
Communication Network (ICN). The
program requires a Windows NT/2000/XP
type personal computer. A series of
interactive displays is used to define block
parameters. After generating the
database, it can be saved to disk and
downloading to the instrument. Once a
database is downloaded to the instrument,
it can be ported to other instruments using
an optional portable memory module and
uploaded to the configurator again if
necessary. See Section 1.4, Related
Documentation for required supporting
documentation.

The creation of interface files for use with pc based runtime packages is also supported.

1-1
MOD 30ML Functions

INTRODUCTION

To simplify configuration, the instrument has resident templates that can be used to configure
basic control schemes. These templates and their setup are described in the operation book.
Use of the templates allows you to configure an instrument without using a separate
configuration program.

1.4 RELATED DOCUMENTATION


Information about this instrument and its operation can be found in:
• IB-1800R-OPR – Operation/Setup, MOD 30ML

Information about this instrument and its configuration can be found in:
• IB-23G600 – Database Reference for Logic Functions - Book 1
• IB-23G602 – Database Reference for Logic Functions - Book 2
• IB-23G601 – Database Reference for Advanced Control Functions
• Vizapp.hlp – On-line help for Visual Application Designer (ViZapp)
• IB-VIZAPP-TUT – ViZapp Training Manual

Information about this instrument and its installation can be found in:
• IB-1800R-INS – Installation, MOD 30ML
• IB-1800R-M30 – MOD 30 Replacement Installation, MOD 30ML
• IB-23C601 – Installation, Remote I/O Modules

Additional ICN connection and loading information can be found in the following:
• IB-23A160 – Instrument Communications Network (ICN) Planning

Users developing interface software to this instrument will also need the following:
• IB-23G001 – ICN Communication Link Programmer’s Manual

1.5 VERSION IDENTIFICATION


To verify the version level of the instrument, check the version number marked on the PROM
label of the identity module. The firmware version is a digit in the catalog number as follows:

Catalog Number Description for 1800P


BASE NUMBER 1800P MOD 30ML Control Identity Module
UNUSED Z Unused Character
ELECTRICAL CODE 10 General Purpose, standard
FUNCTION 1 MOD 30ML
FIRMWARE VERSION 02 Version 2
MODEL A Design Level (512K PROMs)
C Design Level (512K Flash RAM)
Sample Number 1800PZ10101C (Product is serialized)
Version number identification for specific blocks is obtained through the database.

1-2
MOD 30ML Functions

MOD 30ML FUNCTION BLOCKS

SECTION 2
DATABASE PARAMETERS

2.1 MOD 30ML FUNCTION BLOCKS


The blocks described in this section are in addition to the System, Input/Output and Algorithm
blocks described in the Logic Functions books. These blocks support display, alarm and
built-in I/O functions used specifically by this instrument.

System Block Selection

DISP Display Block. Reference Section 2.2. This block assigns user display
resources and provides a simple scripting language capability to
define how keyboard and display event driven actions are handled.
There can be multiple display blocks in an instrument database.

DIF Display Interface Block. Reference Section 2.3. This block is a


repository for all instrument display related data and control. The list of
user displays is maintained by this block. There can only be one DIF
block.

ST State Block. Reference Section 2.4. This block is a data only block
that is used to maintain a set of state tables that associates state
values with mnemonics for all user display blocks and process alarm
display blocks. There can only be one ST block

TL Tune List Block. Reference Section 2.5. This block contains a list of
attributes accessible as tunable parameters from one or more user
display blocks. There can be multiple tune list blocks in an instrument
database.

Algorithm Block Selection

PAD Process Alarm Display Block. Reference Section 2.6. This block
produces a discrete signal to advise of an irregular process condition
and includes the resources to display messages based upon a
condition. There can be multiple process alarm display blocks in an
instrument database.

Input/Output Module Block Selection

AIN Built-in Analog Input Block. Reference Section 2.7. This block
processes a field signal for one of the two built-in analog inputs and
connects the data using MODOUT to an input function block MODIN.

AOUT Built-in Analog Output Block. Reference Section 2.8. This block uses
one of the two built-in analog output circuits to output a field signal of
the analog data from another block.

2-1
MOD 30ML Functions

MOD 30ML FUNCTION BLOCKS

Refer to Section 3 for examples of how these blocks are used.

2-2
MOD 30ML Functions

DISPLAY BLOCK

2.2 DISPLAY BLOCK (DISP)


The display block is used to assign display resources and keyboard actions to one user
display. Display resources are identified as shown below. Keyboard actions include pressing,
holding and releasing one of the eight available keys (Alarm through the down arrow - ∇ ). In
its simplest form, the display block connects variable data for presentation as values on lines
or bars. These values can be formatted and identified with engineering units or other labels.
More advanced functions are accomplished using the display script language. A display
script is an event driven set of statements used to respond to keyboard actions and other
events. The state of the Display block is defined within the script (there can be multiple
states) and uses the State Table block and the Tune List block for valid state lists and tune
lists. Multiple display blocks can be configured for an instrument and each requires that it be
listed in the Display Interface block to be accessible. Display blocks are only executed when
the instrument is in RUN. In all other states, only the device displays will be available.

Figure 2-1. Display Resources

2-3
MOD 30ML Functions

DISPLAY BLOCK

2.2.1 Display Block Operation

Moving Between and Within Displays


One option for moving between user displays is to press the tag key (the default action) to
advance to the next display, as defined by a list in the DIF (Display Interface) block. The
display list may also be accessed using a DIF block input for remote selection of a display.
Navigation within a display is defined within the scripts written for this block. User displays
can be exited to go to an alarm, other user, or device displays using the TAG key. In all
cases the current display state and display field assignments are preserved permitting you to
return to the display 'as left' unless the entry or exit display script changes it.

Display Inputs and Formats


Display block inputs can be given ASCII names for identification within the block and can be
assigned specific line (alphanumeric) and/or bar graph display formats for display purposes.
Display format information is configured separately and multiple inputs can be assigned the
same format. Inputs and local attributes not assigned a display format use default rules when
put on the display. Display block inputs provide input or output connections, local variables
for user scripts, calculated outputs, or recipe data for use elsewhere.

Basic Display Block Configuration


Initial values for local or remote data to each display field are pre-assigned. In the simplest
use of the display block, no further configuration is done (with the probable exception of
display formats), and different data would be viewed by navigating to a different display
block. In this case, (i.e. without a display format) no data can be changed from the faceplate.
If the data assigned to the bottom 8 character field is made writeable through a display format
using one of the standard entry methods ('immediate' or 'entry required'), the up and down
keys, and possibly the scroll key, are assigned to changing the values when the keys are
pressed.

Display State Scripting Language


The edit display scripts display uses a text editor to specify entry, exit and continuous
actions, the contents of each display field, and the function of each key using a scripting
language. This is useful where a variety of data must be available under one tag (such as the
typical pid loop display). The display can be thought of as always being in one of several user
defined states, with the current state number stored in the DSPSTATE attribute. For each
state, entry, exit and active (continuous) scripts as well as scripts for any key activity of
interest (pressed, held and released for each key) can be defined. All of these scripts are
optional, and only a subset will be appropriate for a given display state.
In addition to the 'per state' scripts, default scripts can be defined. For any condition or key
activity not covered by a script specific to the current display state, the default script will be
used. The default scripts are also optional, and any activity or condition not covered by either
a state specific or default script will generate system default action, if any, or be ignored. Any
such system default action is also optionally available in addition to a user defined script.
Active scripts are executed on each 50 msec tick as long as the display/display state is
active. Entry and exit scripts are executed only when entering or leaving a display state.
Power down and power up are special cases of entry and exit even if you end up on the
same display.
Access to tuning list blocks is provided via the TUNE statement, which when issued provides
a scroll list of the variables listed in the associated tuning list block. The TUNELIST attribute
is writeable, so that under script or host control a display block can reference any number of
tuning list blocks.

2-4
MOD 30ML Functions

DISPLAY BLOCK

When a remote input is 'edited' or written to by a script statement, the remote variable itself
will be changed (as in a supervisory message). In this way the input is really an output. The
output variable should not be tested immediately by the script after writing to it because the
message will need time to process.

2.2.2 Display Block Parameters


The mnemonics, valid values, and data types for all fields that may be selected for display
and/or be used in making softwiring connections are listed in Table 2-1. A description of each
attribute is provided in the attribute list that follows the table.

Table 2-1. Display Block Attributes, Valid Values, Mnemonics and Data Types
Field Mnemonic Valid Values CWR Data Type Attr
Version VERSION 1 – – R Long State 00
Block Length BLKLEN – – R Count 01
State STATE RUN (0 – – R Short State 02
Bad Inputs BADINP Rejected (0), Accepted (1) CWR Discrete 03
Diagnostic Group SUPPGRP NONE, 1 - 7 CWR Long State 04
Invalid Operation Error INVOPS Enabled (0), Suppressed (1). CWR Discrete 05
Invalid Operation unacknowledged INVOPU NO (0), YES (1) – WR Discrete 06
Invalid Operation active INVOPA NO (0), YES (1) ––R Discrete 07
Display State DSPSTATE 1 - 255 CWR Long State 08
Display Tag DISPTAG CWR ASCII 09
Tuning TUNING – WR Discrete 10
Tuning List TUNELIST CWR Count 11
Input 1 through Input 800 I1 to I800 CWR per config 20 to
819

Block Type
DISP This is the display block type.

00 Block Version (VERSION) ................................................................................................ – – R


The display block is at version 1.

01 Block Length (BLKLEN) .................................................................................................... – – R


Number of database bytes taken by the block. Always an even number.

02 State (STATE) .................................................................................................................... – – R


See IB-23G600 (Logic Book 1) Section 2.4.1, State Changes for additional information on
block states.
RUN 0 Normal Operation. Block is always executed.

03 Bad Inputs (BADINP)......................................................................................................... CWR


See IB-23G600 (Logic Book 1) Section 2.3.2, Data Quality for additional information.
Rejected 0 Block checks data quality on its inputs and if a displayed input is bad, it
will be indicated on the display. If the input is displayed on a 'line', an
error message will alternate with the value. If on a bar or bar segment,
the bar or bar segment will flash.
Accepted 1 Block runs its algorithm without a check on input quality.

2-5
MOD 30ML Functions

DISPLAY BLOCK

04 Diagnostic Group (SUPPGRP) ........................................................................................ CWR


The diagnostic error reported by this block can be grouped for System Event block control of
its reporting. The selections are:
NONE No group assigned.
1 to 7 Defines the diagnostic group number for the diagnostic suppression group
controlled by the System Event block.

05 Invalid Operation Error (INVOPS) ................................................................................... CWR


The error “INVALID DISPLAY OPERATION ATTEMPTED” (event code 4) is reported if for
example, an attempt is made (via key script or remote source) to perform some illegal
operation.
ENABLED 0 Invalid Operation error is enabled.
SUPPRESSED 1 Invalid Operation error is suppressed (not writeable).

06 Invalid Operation Error Unacked (INVOPU)................................................................... – – R


If the invalid operation error diagnostic is enabled, the unacknowledged status indicates if the
diagnostic is or is not acknowledged.
NO 0 Diagnostic error is acknowledged.
YES 1 Diagnostic error is unacknowledged.

07 Invalid Operation Error Active (INVOPA) ....................................................................... – WR


If the invalid operation error diagnostic is enabled, the active status indicates if the diagnostic
is active even after acknowledgment.
NO 0 Diagnostic error is not active.
YES 1 Diagnostic error is active.

08 Display State (DSPSTATE)............................................................................................... CWR


The current state number of one of several user defined states. Values of display state are
assigned, starting with 1, in the order that the state names appear in the display scripts edit
display. Valid values are 1 - 255. Whenever a script is not explicitly defined for the current
display state a default script is used (if one exists).

09 Display Tag (DISPTAG) .................................................................................................... CWR


Up to 8 ASCII characters identifying this display. See Figure 2-3 for characters entered
through faceplate. See Appendix B for valid character set.

10 Tuning (TUNING) .............................................................................................................. – WR


Indicates when the tuning list is being displayed (or would be if this display block were active)
NO 0 Tuning list is not being displayed.
YES 1 Tuning list is being displayed.

11 Tuning List (TUNELIST) ................................................................................................... CWR


The occurrence number (a unique number for each block of the same type) of the tuning list
connected to this block (Tuning List block LISTOUT to the Display block LISTIN connection).
A value of 0 indicates NONE. The TUNELIST attribute is writeable, so that under script or
host control a display block can reference any number of tuning list blocks.

2-6
MOD 30ML Functions

DISPLAY BLOCK

20 to 59 Input 1 through Input 800 (I1 to I800)................................................................................ CWR


The user name for an input is an eight (8) character alphanumeric used to identify the input.
The default names are I1 through I800. The valid types are:
NONE Indicates an unused input (do not reference elsewhere).
REMOTE Any external variable, any data type.
LOCAL Any local data, any data type.

2.2.3 Display Block Configuration Screens


The displays used to configure the display block are described below.

Display Block Page 1


Use this display page to identify the display block, access the inputs, formats and edit display
scripts displays, and configure initial values for lines.

Figure 2-2. Display Block (DISP), Edit Display, page 1

Block Name:
Up to 8 alphanumeric characters identifying block.
Description:
Any descriptive text.
Bad Inputs: (See attribute 3 description.)
If checked, Block runs without a check on input quality. If not checked, the Run Complete
input is treated as FALSE when the input quality is BAD.

2-7
MOD 30ML Functions

DISPLAY BLOCK

Display tag: (DISPTAG)


Up to 8 ASCII characters identifying display. Characters displayed on line 1 when the display
tag mnemonic DISPTAG is used for the line 1 variable. See Appendix B for valid character
set.

Initial display state: (DSPSTATE)


Blank or name of any defined state. Up to 8 ASCII characters - the name of one of the
display states from Display Scripts. DSPSTATE is a special case of a local attribute whose
values can be referenced as the user defined display state names (e.g. State_1).

Initial display data


Line 1,2 and 6:
Any 8 ASCII characters (constant) within double quotes (for example "OPERATE") or
variable data using a block input name (up to 8 fixed characters as defined in the display
block inputs) or a local attribute mnemonic such as the default DISPTAG mnemonic for line
1.

Line 3, 4 and 5:
Any 3 ASCII characters (constant) within double quotes (for example "OPR") or variable data
using a block input name (up to 8 fixed characters as defined in the display block inputs) or a
local attribute mnemonic. Data of type DATE is not allowed.

01234567
89 ABCDE
FGHIJKLM
NOPQRSTU
VWXYZbce
dhklmnpr
stuvw<>=
+-*#/%o
NOTE: Standard character set as entered through faceplate shown. See Appendix B for
valid character set available through configurator and restrictions.
Figure 2-3. Standard ASCII Character Set and Equivalent Display Characters

2-8
MOD 30ML Functions

DISPLAY BLOCK

Display Block Page 2


Use this display page to configure initial values for bars and segments.

Figure 2-4. Display Block (DISP), Edit Display, page 2

Bars and Segments:


A fixed integer 0 - 50 or a block input name or local attribute mnemonic. Data type
must be Discrete, Short State, Long State, Count, Floating-Point or Millisecond Time.
When bars are used for deviation, intensified segments 1 and 2 are not available to
the user. When an intensified segment has a variable input with a bar format, that
format must be BAR (Deviation is not allowed).

2-9
MOD 30ML Functions

DISPLAY BLOCK

Display Block Inputs


Use this display page to configure up to 800 inputs for a display block. Inputs are configured
with internal data that is used if no connection is made to the input.

Figure 2-5. Display Block Inputs, Edit Display, page 1

Select Add or Modify to edit input data and Delete to remove an input.

Move Up, Move Down


Select the item to be moved up or down and then select the Move Up or Down button to
move the item.

Duplicate
Select the item to be duplicated and then select the Duplicate button to make a copy (default
name is assigned).

Inputs 001 through 800:


(I1 ... I800), or 8 characters that start with a letter and contain only letters, digits, and
underscores. This becomes the unique name of the input for reference in this block.
Display block inputs can be assigned specific line (alphanumeric) and/or bar graph display
formats for display purposes. Display format information is configured separately and multiple
inputs can be assigned the same format. Inputs and local attributes not assigned a display
format use default rules when put on the display. Display block inputs provide input or output
connections, local variables for user scripts, calculated outputs, or recipe data for use
elsewhere.

2-10
MOD 30ML Functions

DISPLAY BLOCK

Name:
The user name is an eight (8) character alphanumeric used to identify the input. The name
must start with a letter (A-Z) and contain only letters, digits, and underscores. This becomes
the unique name of the input for reference in this block.

Data type:
Any data type (Count, Discrete, Short State, Date, Long State, Floating-Point, ASCII,
Millisecond Time, Hex).

Internal Data:
Initial local input data value of type selected.

Line format name:


Name of the Display Format to be used for line display. Must be a line format.

Bar format name:


Name of the Display Format to be used for bar display. Must be Bar or Deviation format.

2-11
MOD 30ML Functions

DISPLAY BLOCK

Display Block Formats


Use this display page to configure up to 512 format types for a display block. Multiple inputs
can be assigned the same format.

Figure 2-6. Display Block Display Formats, Edit Display, page 1

Select Add or Modify to edit formats and Delete to remove a format.

Move Up, Move Down


Select the item to be moved up or down and then select the Move Up or Down button to
move the item.

Duplicate
Select the item to be duplicated and then select the Duplicate button to make a copy (default
name is assigned).

Name:
(F1 ... F512), or 8 characters that start with a letter and contain only letters, digits, and
underscores. This becomes the unique name of the format for reference in this block.

2-12
MOD 30ML Functions

DISPLAY BLOCK

Format type:
Table 2-2 lists the different display format types and what fields are active for each type. A
referenced format cannot be NONE.

Low Limit:
Numeric entry per data type. Low limit must not exceed high limit.
For line display, this is the minimum allowed operator entry.
For a bar display, it is the value for which the bar will indicate 0% (center scale for
deviation).

High Limit:
Numeric entry per data type.
For line display, this is the maximum allowed operator entry.
For a bar display, it is the value for which the bar will indicate 100%.

Entry Method:
None, Immediate (value changes as change is made), Enter Req’d (key defined as ENT for
enter must be pressed to make change). Entry method cannot be IMMEDIATE for TIME1 -
TIME4, ASCII, HEX, and DATE display formats.

Engineering Units:
A four character alphanumeric to appear after a line formatted variable.

2-13
MOD 30ML Functions

DISPLAY BLOCK

Table 2-2. Display Formats, Supported Data Types and Active Fields
Display Entry Eng State** Edit
Supported Data Types* Limits
Format Method Units Table When
Float0 X Y Y N Y Y
Float1 X.X Y Y N Y Y
Float2 X.XX Y Y N Y Y
Float3 X.XXX Y Y N Y Y
Float4 X.XXXX Y Y N Y Y
Float5 X.XXXXX Y Y N Y Y
Float6 X.XXXXXX Y Y N Y Y
Integer1 Discrete, Short State, Long State Y Y N Y Y
Integer2 Count Y Y N Y Y
Integer4 Millisecond Time Y Y N Y Y
Time1 HH:MM:SS Y N N Y Y
Time2 M:SS.SSS Y N N Y Y
Time3 HHHH:MM Y N N Y Y
Time4 MM:SS.SSS Y N N Y Y
State Discrete, Short State, Long State, Count Y N Y N Y
ASCII ASCII Y N N N Y
Hex Hex Y N N N Y
Date Date Y N N N Y
Bar Discrete, Short State, Long State, Count, N N N N N
Millisecond Time, Floating Point
Deviation Discrete, Short State, Long State, Count, N N N N N
Millisecond Time, Floating Point
* Float0 through Float6 are Floating-point and Time1 through Time4 are millisecond time data types.
** When display format is STATE:
- A Display State Table name must be entered.
- An Entry State Table name must be entered, when entry method is anything but NONE.
- State Table names referenced must be defined in the State Table (ST) block.

Display State Table:


Name of a state table to be used for display of a variable. The value of the variable is
compared to the values in the list state table and if found, the associated mnemonic is
displayed. Otherwise, the table specified default string is displayed.

Entry State Table:


Name of a state table defining the allowed entries for a variable. When pressing the up or
down keys, only these values/mnemonics are listed for possible entry via the ENT key.

Edit When:
A standard expression that when TRUE defines when the displayed variable can be changed
('edited') by the operator. If an expression is not entered, the displayed variable can always
be changed. Entry method must be immediate or entry required (otherwise this field is
ignored).

2-14
MOD 30ML Functions

DISPLAY BLOCK

Display Script Editing


Use the internal editor or an external file for the default and user display scripts. When
external files are used, the database is no longer contained in a single file. If you wish to copy
the database (e.g. to floppy disk), you must be sure to copy all external files.

Figure 2-7. Display Script Editing using Text Editor

Use external file:


If the box is checked, the contents of the external file will be used (a file name must be
entered and must be a valid DOS file name). The current workspace subdirectory will be
searched for this file. The current directory is the directory in which a database was most
recently saved or loaded, or if no save or load has taken place, the directory from which this
configurator was started. Because the current directory is searched, only the file name and
extension need to be entered. It will be considered an error if no file name or an invalid file
name is entered.

States
A display block can have zero or up to 255 states, each with a user defined name, except the
state named "DEFAULTS". The defaults state, if defined, contains event scripts that are used
whenever an event script is not explicitly defined for the current display state.

2-15
MOD 30ML Functions

DISPLAY BLOCK

Event Scripts
Each state consists of up to 27 event scripts, the names of which are predefined. Key event
scripts, listed below, correspond to the state of each key. The display event scripts ENTRY
and EXIT are run on entry to and exit from a state. The display event script ACTIVE is run
continuously while in a state and the display block is active.
Key Event Scripts:
ALARM_PRESSED ALARM_HELD ALARM_RELEASED
TAG_PRESSED TAG_HELD TAG_RELEASED
MANUAL_PRESSED MANUAL_HELD MANUAL_RELEASED
AUTO_PRESSED AUTO_HELD AUTO_RELEASED
RL_PRESSED RL_HELD RL_RELEASED
SCROLL_PRESSED SCROLL_HELD SCROLL_RELEASED
UP_PRESSED UP_HELD UP_RELEASED
DOWN_PRESSED DOWN_HELD DOWN_RELEASED
Display Event Scripts:
ENTRY ACTIVE EXIT

Pressed and released are one-shot key events. Held status persists after a key is pressed for
1 second. Key status is managed by the DIF block at each 50 msec tick.

Key Event and Display Event Scripts


Each event script consists of zero or more IF statements, CASE statements, assignment
statements, TUNE statements, or RETURN statements. In the examples below, statement
can be bracketed multiple statements.

IF Statements
The IF statement executes statement(s) immediately following THEN if the conditional
expression evaluates to True. Otherwise, IF executes statement(s) following ELSE. The
general format of the IF statements are:

IF-THEN-ELSE statement: IF-THEN statement:


IF expression THEN IF expression THEN
Statement1; Statement1;
ELSE
Statement2;

CASE Statements
A CASE statement tests whether the result of its expression matches one of a number of
integer values, and branches accordingly. Each case is labeled by one or more integers, or
the keyword "DEFAULT". If the expression matches one of the integer labels, the statements
associated with that label are executed, otherwise, the statements associated with the
DEFAULT label are executed. The DEFAULT case is optional - if it isn't present and the
expression does not match one of the other cases, no statements are executed.

Cases can be listed in any order. Integer labels must be unique and must be in the range 0 to
65535. Up to 255 cases may be present, not including the DEFAULT case. If the expression
evaluates to a value outside the range 0 to 65535, the default case is executed, if present.

The break statement causes an immediate exit from a case statement. As a general rule, the
last statement for each case should be a break statement, although it is not required. After
the statements associated with a case are done, execution continues with the statements for
the next case unless a break statement is present to prevent this.

The general format of the CASE statement is:


CASE expression OF
{

2-16
MOD 30ML Functions

DISPLAY BLOCK

000:
Statement1;
BREAK;
001:
Statement2;
BREAK;
002:
Statementx;
BREAK;
.
.
.
255:
Statementy;
BREAK;
DEFAULT:
Statementz;
}

TUNE Statements
The TUNE; statement switches to the corresponding tuning display. The variables listed in
the associated tuning list block provides a scroll list for the display. The TUNELIST attribute
is writeable, so that under script or host control a display block can reference any number of
tuning list blocks. If a tune password has been configured, the password will be requested
before entry and, if it is correct, tuning will be allowed. Otherwise, access will be read only.

RETURN Statements
The RETURN; statement immediately exits from a script. This prevents the script from
performing any additional functions, including predefined system level functions.

Assignment Statements
The assignment statement assigns a value to a given target. The target of an assignment can
be an input name, a local attribute name, or one of several predefined names listed below. All
assignment statements have an expression as their right hand side. The target will be
assigned the value of that expression. Results of assignment statements depend upon the
data type as listed in Appendix A. See Display Language Grammar for usage rules.

The following names represent display resources. They can only be the target of an
assignment. They cannot appear in an expression. They all begin with a pound sign (#).

#RBAR #RISEG1 #RISEG2 #RISEG3 #RISEG4


#MBAR #MISEG1 #MISEG2 #MISEG3 #MISEG4
#LBAR #LISEG1 #LISEG2 #LISEG3 #LISEG4
#LINE1 #LINE2 #LINE3 #LINE4 #LINE5 #LINE6
#LED #BEEPER #UPDN

If the target is one of the predefined names having the suffix .SRC, the expression must be
just a source name (an input name or local attribute name), and the target will be
continuously updated with the value associated with that name.

#RBAR.SRC #RISEG1.SRC #RISEG2.SRC #RISEG3.SRC #RISEG4.SRC


#MBAR.SRC #MISEG1.SRC #MISEG2.SRC #MISEG3.SRC #MISEG4.SRC
#LBAR.SRC #LISEG1.SRC #LISEG2.SRC #LISEG3.SRC #LISEG4.SRC
#LINE1.SRC #LINE2.SRC #LINE3.SRC #LINE4.SRC #LINE5.SRC #LINE6.SRC
#LED.SRC #BEEPER.SRC #UPDN.SRC

2-17
MOD 30ML Functions

DISPLAY BLOCK

Display Language Format


The display block display language has the following general format:

Defaults:
{
Event1:
{
Statement1;
. . .
StatementA;
}
. . .
EventX:
{
Statement1;
. . .
StatementB;
}
}
/* This is a comment */
State_1: /* Free comments within the area */
{ /* enclosed by the * and / symbols */
Event1: /* on any line. */
{
Statement1;
. . .
StatementC;
}
. . .
EventY:
{
Statement1;
. . .
StatementD;
}
}
. . .
State_N:
{
Event1:
{
Statement1;
. . .
StatementE;
}
. . .
EventZ:
{
Statement1;
. . .
StatementF;
}
} /* This is a comment */

2-18
MOD 30ML Functions

DISPLAY BLOCK

Display Language Grammar


The grammar rules that follow describe the display language.
1. The display language can be empty (no states) or have 1 to 255 states (not including the
optional DEFAULTS state).
2. A state can be just empty brackets { } or include event (key and display) scripts.
3. An event script can be just empty brackets { } or a list of statements
4. A statement can be empty brackets { } or any of the following:
CASE expression OF statement
integer case label: statement
BREAK ;
DEFAULT : statement
IF expression THEN statement
IF expression THEN statement ELSE statement
id = expression;
TUNE ;
RETURN ;
;
5. Statements labeled by an integer or the keyword DEFAULT and BREAK statements
cannot appear outside the body of a case statement.
6. Assignment statements take the form
id = expression
resource_id = expression

Examples of assignments:
Setting a display field to a constant value:
#RBAR = sourcename or constant or expression

Connecting a display line to a source:


#RBAR.SRC = sourcename

Setting an input or local attribute to a constant (if the input is remote, the actual
source variable will be changed):
destname = sourcename or constant or expression
7. The right side of an assignment statement must be an input name or local attribute name
when the left side is one of the predefined names with the suffix .SRC.

2-19
MOD 30ML Functions

DISPLAY BLOCK

8. Assignment to display resources:


Line1 - Line6 can be assigned values of any type.
Bars & Segments can only be assigned values 0 to 50.
LED & Beeper can only be assigned values 0 or 1 or 8 (Short State - On=1,
Off=0, or System Use=8).
UPDN can only be assigned values 0 to 8 (Short State 0 to 8).
Bit 0 = up arrow on,
bit 1 = slash on,
bit 2 = dn arrow on,
value 8 is System Use.
Note: If LED, Beeper or UPDN is set to a value other than system use, it will be
unavailable for normal system functions until it is set back to 8.
9. An expression takes the form:.(parentheses can be used to control the order of
evaluation)
expression binary_op expression
unary_op expression
- float
+ float
id (input name or local attribute name or display state name)
constant

10. Expressions cannot exceed 255 bytes after being compiled. Expressions can appear in
the conditional part of IF and CASE statements and on the right side of assignments.

11. The assignment expression is defined so that HEX or ASCII data can appear on the right
side as a single operand but cannot appear in an expression. Expressions having more
than one operand follow the same rules as in the expression block.

12. Binary operations (binary_op) are:

Precedence Symbol Operation


2 ** Raised To The Power
4 * Times
4 / Divide
5 + Plus
5 - Minus
6 < Less Than
6 <= Less Than Or Equal
6 > Greater Than
6 >= Greater Than Or Equal
7 == Equals
7 != Unequal
8 && Logical AND
9 || Logical OR

2-20
MOD 30ML Functions

DISPLAY BLOCK

13. Unary operations (unary_op) are:


Precedence Symbol Operation
1 + Unary Plus (for floating point constants only)
1 - Unary Minus (for floating point constants only)
3 SQRT Square Root
3 MOM Momentary
3 ! Logical NOT
3 ABS Absolute Value
3 EXP Exponential
3 NLOG Natural Log
3 LOG Log Base 10
3 INT Integer

14. Arguments to all unary operators (except ! and unary + and unary -) must appear in
parentheses (e.g. SQRT (I1)).
15. A constant can be:
count An integer between 0 and 65535.
discrete TRUE or FALSE.
short state An integer between 0 and 15, with the suffix S.
long state An integer between 0 and 255, with the suffix L.
date M,month/day/year (U.S. format), or
D,day/month/year (European format).
floating point A floating-point number.
millisecond time Hours:minutes:seconds (h:mm:ss.sss). Note that seconds
can be expressed with up to 3 decimal places.
hex A hexadecimal integer with the prefix $
ASCII An ASCII string enclosed in double quotes.

Examples of valid constants:


count 10224
discrete TRUE
short state 3S
long state 56L
date M,1/30/90 (U.S. format), D,30/1/90 (European format)
floating point 1.23E-10, -0.2546, 1.333333E12, 99.625, etc.
(Note that the exponent is optional.)
millisecond time 1:20:30.020
hex $aaff
ASCII "Abraham Lincoln"

16. A name must be unique and can be a 1 to 8 character string of letters, digits or
underscores, starting with a letter. This string represents an input name for identifying
variables or a local attribute name referenced by their standard mnemonics or display
state name.

2-21
MOD 30ML Functions

DISPLAY BLOCK

17. Display state names can appear in any expression, where they are treated as long state
variables, but they cannot be the target of an assignment. Display states are identified
by number in the instrument and are assigned numbers, starting at 1, in the order in
which they appear in the display scripts.

DSPSTATE is a local attribute whose value represents the current display state. It can
appear in any expression.

To change display state, DSPSTATE is assigned a value. Typically, DSPSTATE is


assigned a user defined display state name:
DSPSTATE = HEAT;
Another typical use of DSPSTATE is to change to the "next" state:
DSPSTATE = DSPSTATE + 1;

2.2.4 Display Block Diagnostics and Events


The event codes (and their suggested text messages) for the display block are given below.
See database attributes descriptions for additional information. See the system event block
for a description of event transitions.

Diagnostic Group: (SUPPGRP)


Used to suppress (None) or enable (1 through 7) group reporting of diagnostic errors
associated with this block. The selected diagnostic suppression group number allows the
diagnostic errors reported by this block to be grouped with other blocks for System Event
control of their reporting

Invalid Operation Error: (INVOPS)


Check to suppress reporting of the error. This error is reported if, for example, an attempt is
made, via a script, to assign a variable with deviation format to an intensified bar segment or
perform some similar illegal operation

Event Code Type Description


4 Ack Only Diag INVALID DISPLAY OPERATION ATTEMPTED. This
error is reported if, for example, an attempt is made, via
a script, to assign a variable with deviation format to an
intensified bar segment or perform some similar illegal
operation.

2-22
MOD 30ML Functions

DISPLAY BLOCK

2.2.5 Typical Block Connections for Display Block


Typical block connections for the display block are shown below. LISTIN is used exclusively
for connecting with the tune list LISTOUT connection. All other input connections are made to
I1 to I800.

TL DISP
LISTOUT LISTIN
I1 (AIN1.R)
AIN
I2 (AOUT.R)
Result

AIN
Result
Figure 2-8. Display Block, Typical Block Connections

2.2.6 Display Block Compile Errors


Reported errors for the display block are described below.

"Case label out of range."


Labels in a case statement must be in the range 0 - 65535.

"Data assigned must be numeric."


• When the target of an assignment is a display resource representing a bar or
intensified segment, the assigned data must be numeric (discrete, short state,
long state, count, msec time, or floating point).
• When the target is any of the remaining display resources, assigned data of any
type is acceptable.

"Data types on left and right of expression are incompatible."


• When the target of an assignment is an input or local attribute name and the right
side is simply a single operand, the following rules are used. Discrete, short
state, long state, count, msec time, floating point, date, and hex data can be
assigned to any target. ASCII data can be assigned to an ASCII target only.
• When the target is an input or local attribute name and the right side is a complex
expression (more than a single operand), the instrument will convert the
expression result to a data type compatible with the target.

"Duplicate case label."


Each label in a case statement must be unique.

"Duplicate state name."


Each display state name must be unique.

"Expression is too long."


Expressions cannot exceed 255 bytes after being compiled. Expressions can appear
in the conditional part of IF and CASE statements and on the right side of
assignments.

2-23
MOD 30ML Functions

DISPLAY BLOCK

"HEX & ASCII data not allowed in expression."


HEX and ASCII data can't appear in an expression because the expression evaluator
in the instrument can't handle this data. However, if the right side of an expression is
a single operand, that operand can be HEX or ASCII.

"Illegal assignment to state name."


Display state names cannot be assigned values.

"Illegal constant."
An illegal constant appeared in an expression (invalid date, invalid time, number out
of range, etc).

"Invalid state name."


Display state names must start with a letter and contain letters, digits, and
underscores only.

"Name is undefined."
A name used in an expression is not an input name, local attribute name, or display
state name. Possible causes of this error are mistakenly using a display resource
name or event script name in an expression.

"State name exceeds 8 chars."


Display state names must not exceed 8 characters.

"Syntax error."
Unrecognized character, missing punctuation, etc.

"Too many cases in case statement."


A case statement can have no more than 255 cases.

"Unknown event script name."


Event script names must be one the predefined names.

"Unknown resource name."


Display resource names must be one of the predefined names.

"Value assigned must be an input or attribute name."


The right side of an assignment statement must be simply an input name or local
attribute name when the left side is one of the display resources with the suffix .SRC.

2-24
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

2.3 DISPLAY INTERFACE BLOCK (DIF)


The Display Interface block is a repository for all instrument display related data and control.
Use this block to assign the following:
• an instrument device tag
• access and entry constraints (tune and configure passwords, access and entry timeouts)
• customize alarm/diagnostic presentation (flash/beep on/off and rates)
• power up display
• define the order in which user displays are selected by the tag key and/or
• specify an input for remote selection of user display

2.3.1 Display Interface Block Operation


The Display Interface block monitors the operation of the faceplate by checking faceplate
communications errors and keyboard response errors. The block is executed every 50
milliseconds and manages activities such as ramping, current access level, faceplate
response to process alarms and diagnostics and the display list.

Faceplate Response to Process Alarms and Diagnostics


This block is used to configure the Alarm LED flash rate, the display flashing and flash rate
and the audio indicator beeping and beep rate. The Alarm LED will always indicate, by
flashing, that an unacknowledged diagnostic or process alarm condition exists. If the Alarm
LED is ON but not flashing it indicates an active diagnostic or process alarm exists and is
acknowledged. If the Alarm LED is OFF there is no diagnostic or process alarm condition.

The Alarm LED flash rate, the display flashing and flash rate and the audio indicator beeping
and beep rate are determined by the OR'ing of their configurations. FAST rate will override
SLOW rate, Flash Display will override not flashing display and beeping will override not
beeping. For example; if the attributes are configured as follows, and there is an
unacknowledged diagnostic, an unacknowledged high priority process alarm and an
unacknowledged low priority process alarm present, the Alarm LED will be flashing at a
FAST rate, the display will be flashing at a SLOW rate and the beeper will be beeping at a
SLOW rate.

Flash Display on Diagnostic NO


Beep on Diagnostic NO
Diagnostic Flash/Beep Rate FAST
Flash Display on High Priority Process Alarm YES
Beep on High Priority Process Alarm NO
High Process Alarm Flash/Beep Rate SLOW
Flash Display on Low Priority Process Alarm NO
Beep on Low Priority Process Alarm YES
Low Process Alarm Flash/Beep Rate SLOW

There is a silence feature which keeps the display from flashing and the beeper from beeping
while you are viewing the alarms and for one minute after you quit viewing alarms. To keep
re-arming this feature, press the ALARM key and then press the key labeled RET (R/L).

2-25
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

Display List
Access to different displays in the display list is controlled locally through the TAG key or
remotely from a count variable input. When a remote display number is present and the value
is less than or equal the number of displays in the list, front face navigation using the TAG
key is disabled and the remote input selects the display.

2.3.2 Display Interface Block Parameters


The mnemonics, valid values, and data types for all fields that may be selected for display
and/or be used in making softwiring connections are listed in Table 2-3. A description of each
attribute is provided in the attribute list which follows the table.

Table 2-3. Display Interface Block Attributes, Valid Values, Mnemonics and Data Types
Field Mnemonic Valid Values CWR Data Type Attr
Version VERSION 1 – – R Long State 00
Block Length BLKLEN – – R Count 01
State STATE RUN (0) – – R Short State 02
Bad Inputs BADINP Rejected (0), Accepted (1) CWR Discrete 03
DIAGNOSTICS: Group SUPPGRP NONE, 1 - 7 CWR Long State 04
Faceplate Comm Error FPCOMS Enabled (0), Suppressed (1). CWR Discrete 05
Faceplate Communication error FPCOMU NO (0), YES (1). – WR Discrete 06
unacknowledged
Faceplate Communication error FPCOMA NO (0), YES (1). – – R Discrete 07
active
No Keyboard Response NOKBDS Enabled (0), Suppressed (1). CWR Discrete 08
No Keybrd Response NOKBDU NO (0), YES (1). – WR Discrete 09
unacknowledged
No Keybrd Response active NOKBDA NO (0), YES (1). – – R Discrete 10
reserved 11
Faceplate Version FPVER 0.0 - 25.5. – – R Long State 12
Device Tag DEVTAG CWR Ascii 13
Power Up Display User Tag PUPDISP DEVICE (0), PREVIOUS (65535) CWR Count 14
or display tag
Current Display CURDISP – – R Count 15
Current Access Level CURACCS OPERATE (0), TUNE (1), – – R Short State 16
CONFIGURE (2).
Access Timeout ACCTIME NONE (0), 1 - 54 minutes. C–– Long State 17
Min Low Alarm Priority MINLOPRI 2 - 255. C–R Long State 18
Diagnostics: Display Flash FLSHDIAG NO (0), YES (1). CWR Discrete 19
Diagnostics: Beep BEEPDIAG NO (0), YES (1). CWR Discrete 20
Diagnostics: Flash/ Beep Rate DFLSHRAT SLOW (0), FAST (1). CWR Discrete 21
High Priority Process Alarms: FLSHHIPR NO (0), YES (1). CWR Discrete 22
Display Flash
High Priority Process Alarms: BEEPHIPR NO (0), YES (1). CWR Discrete 23
Beep
High Priority Process Alarms: HFLSHRAT SLOW (0), FAST (1). CWR Discrete 24
Flash/Beep Rate
Low Priority Process Alarms: FLSHLOPR NO (0), YES (1). CWR Discrete 25
Display Flash
Low Priority Process Alarms: BEEPLOPR NO (0), YES (1). CWR Discrete 26
Beep
Low Priority Process Alarms: LFLSHRAT SLOW (0), FAST (1). CWR Discrete 27
Flash/Beep Rate

Table 2-3. Display Interface Block Attributes, Valid Values, Mnemonics and Data Types (Cont’d)

2-26
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

Field Mnemonic Valid Values CWR Data Type Attr


Port 3 Noise Counter NOISECTR – WR Count 28
Port 3 Buffer Full Counter BFULLCTR – WR Count 29
Port 3 Communications Error CMERRCTR – WR Count 30
Counter
Keyboard Error Counter KBERRCTR – WR Count 31
Flash Periods: Slow - Off Counts SFOFFCNT CWR Long State 32
Flash Periods: Slow - On Counts SFONCNT CWR Long State 33
Flash Periods: Fast - Off Counts FFOFFCNT CWR Long State 34
Flash Periods: Fast - On Counts FFONCNT CWR Long State 35
Flash Periods: Activity - Off ACOFFCNT CWR Long State 36
Counts
Flash Periods: Activity - On ACONCNT . CWR Long State 37
Counts
Entry Timeout ENTRTIME NONE (65535), CWR Count 38
Date Format DATEFMT US (0), or EURO (1). CWR Discrete 39
Shutdown Instrument on SHUTFAIL NO (0), YES (1). CWR Discrete 40
Faceplate Comm Failure
Remote Display Number Input REMDISP CWR Count 60

Block Type
DIF This is the display interface block type.

00 Block Version (VERSION) ................................................................................................ – – R


The display interface block is at version 1.

01 Block Length (BLKLEN) .................................................................................................... – – R


Number of database bytes taken by the block. Always an even number.

02 State (STATE) .................................................................................................................... CWR


Block state is always RUN. See IB-23G600 (Logic Book 1) Section 2.4.1, State Changes
for additional information on block states.

RUN 0 Normal Operation. Block is always executed.

03 Bad Inputs Accepted (BADINP) ....................................................................................... CWR


See IB-23G600 (Logic Book 1) Section 2.3.2, Data Quality for additional information.
Rejected 0 Block checks data quality on its inputs and, if it is BAD, no action will be
taken on the input and display selection will revert to the TAG key.
Accepted 1 Block runs its algorithm without a check on input quality.

04 Diagnostic Group (SUPPGRP)......................................................................................... CWR


The diagnostic error reported by this block can be grouped for System Event block control of
its reporting. The selections are:
NONE No group assigned.
1 to 7 Defines the diagnostic group number for the diagnostic suppression group
controlled by the System Event block.

2-27
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

05 Faceplate Comm Error (FPCOMS) .................................................................................. CWR


The error “FACEPLATE COMMUNICATIONS ERROR” (event code 4) is reported if an error
occurred when trying to communicate with the faceplate. Instances are counted in
CMERRCTR (attribute 30) or BFULLCTR (attribute 29).
ENABLED 0 Faceplate communication error is enabled.
SUPPRESSED 1 Faceplate communication error is suppressed.

06 Faceplate Communication Error Unacknowledged (FPCOMU)................................... – WR


If the faceplate communication error diagnostic is enabled, the unacknowledged status
indicates if the diagnostic is or is not acknowledged.
NO 0 Diagnostic error is acknowledged.
YES 1 Diagnostic error is unacknowledged (not writeable).

07 Faceplate Communication Error Active (FPCOMA) ...................................................... – – R


If the faceplate communication error diagnostic is enabled, the active status indicates if the
diagnostic is active even after acknowledgment.
NO 0 Diagnostic error is not active.
YES 1 Diagnostic error is active.

08 No Keyboard Response (NOKBDS) ................................................................................ CWR


The error “NO KEYBOARD RESPONSE”.(event code 5) is reported if the faceplate failed to
respond when keyboard data was requested. Instances are counted in KBERRCTR (attribute
31).
ENABLED 0 No Keyboard Response error is enabled.
SUPPRESSED 1 No Keyboard Response error is suppressed.

09 No Keyboard Response Unacknowledged (NOKBDU) ................................................. – WR


If the no keyboard response error diagnostic is enabled, the unacknowledged status
indicates if the diagnostic is or is not acknowledged.
NO 0 Diagnostic error is acknowledged.
YES 1 Diagnostic error is unacknowledged (not writeable).

10 No Keyboard Response Active (NOKBDA) .................................................................... – – R


If the no keyboard response error diagnostic is enabled, the active status indicates if the
diagnostic is active even after acknowledgment.
NO 0 Diagnostic error is not active.
YES 1 Diagnostic error is active.

11 Reserved

12 Faceplate Version (FPVER) ............................................................................................ – – R


This is the software version of the faceplate presented as a number 0.0 to 25.5.

13 Device Tag (DEVTAG) ..................................................................................................... CWR


Up to 8 ascii characters identifying the instrument. Displayed on the second line of the top
level device display on the front panel of the instrument.

14 Power Up Display User Tag (PUPDISP) ........................................................................ CWR

2-28
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

Choose a display to appear on the instrument front face at power up.


DEVICE 0 Power up display is the *DEVICE* display (top level display).
USER Power up display is a user display from the Edit Display List. The
user field will be active to enter a display tag from the display list (the
display's position in Display List is stored as number).
PREVIOUS 65535 Power up display is the previous display.

15 Current Display (CURDISP) ............................................................................................. – – R


Display currently on the faceplate (stored as display number).

16 Current Access Level (CURACCS) ................................................................................. – – R


Current level of access.
OPERATE 0 Base operating level.
TUNE 1 Tune access enabled.
CONFIGURE 2 Configure access enabled.

17 Access Timeout (ACCTIME) ............................................................................................ C – –


The time in minutes (1 - 54) that the tune and configure access levels will timeout and return
to the operate level after last keyboard activity.
NONE 0 No timeout. Current access level will not timeout and change.
USER 1 to 54 Current access level will timeout and change 1 to 54 minutes after
last keyboard activity. Enter 1 to 54 in the subsequent field.

18 Min Low Alarm Priority (MINLOPRI) .............................................................................. C – R


All process alarms with priority >= this value (2 - 255) are considered LOW priority for display
purposes.

19 Diagnostics: Display Flash (FLSHDIAG) ....................................................................... CWR


Use to specify if an unacknowledged diagnostic will cause the entire display to flash. The
LED always flashes on an unacknowledged diagnostic.
NO 0 display flashing is disabled for an unacknowledged diagnostic.
YES 1 an unacknowledged diagnostic will cause the entire display to flash.

20 Diagnostics: Beep (BEEPDIAG)...................................................................................... CWR


Use to specify if an unacknowledged diagnostic will cause the beeper to beep.
NO 0 beeping is disabled for an unacknowledged diagnostic.
YES 1 an unacknowledged diagnostic will cause the beeper to beep

21 Diagnostics: Flash/ Beep Rate (DFLSHRAT)................................................................. CWR


Diagnostic flash rate for LED, display and beeper.
SLOW 0 flash rate as set by slow off and on counts.
FAST 1 flash rate as set by fast off and on counts.

2-29
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

22 High Priority Process Alarms: Display Flash (FLSHHIPR)........................................... CWR


Use to specify if an unacknowledged hi priority process alarm (from PAD Block) will cause
the entire display to flash. The LED always flashes on an unacknowledged alarm.
NO 0 display flashing is disabled for an unacknowledged hi priority
process alarm.
YES 1 an unacknowledged hi priority process alarm will cause the entire
display to flash.

23 High Priority Process Alarms: Beep (BEEPHIPR)......................................................... CWR


Use to specify if an unacknowledged hi priority process alarm (from PAD Block) will cause
the beeper to beep.
NO 0 beeping is disabled for an unacknowledged hi priority process alarm.
YES 1 an unacknowledged hi priority process alarm will cause the beeper
to beep.

24 High Priority Process Alarms: Flash/Beep Rate (HFLSHRAT)..................................... CWR


Hi Priority process alarm flash rate for LED, display and beeper.
SLOW 0 flash rate as set by slow off and on counts.
FAST 1 flash rate as set by fast off and on counts.

25 Low Priority Process Alarms: Display Flash (FLSHLOPR) .......................................... CWR


Use to specify if an unacknowledged low priority process alarm (from PAD Block) will cause
the entire display to flash. The LED always flashes on an unacknowledged alarm.
NO 0 display flashing is disabled for an unacknowledged low priority
process alarm.
YES 1 an unacknowledged low priority process alarm will cause the entire
display to flash.

26 Low Priority Process Alarms: Beep (BEEPLOPR) ........................................................ CWR


Use to specify if an unacknowledged low priority process alarm (from PAD Block) will cause
the beeper to beep.
NO 0 beeping is disabled for an unacknowledged low priority process
alarm.
YES 1 an unacknowledged low priority process alarm will cause the beeper
to beep.

27 Low Priority Process Alarms: Flash/Beep Rate (LFLSHRAT) ...................................... CWR


Low Priority process alarm flash rate for LED, display and beeper.
SLOW 0 flash rate as set by slow off and on counts.
FAST 1 flash rate as set by fast off and on counts.

28 Port 3 Noise Counter (NOISECTR)................................................................................. – WR


Counts instances (from 0 to 65535) of noise error on internal communications port 3 (used by
faceplate and analog inputs).

29 Port 3 Buffer Full Counter (BFULLCTR) ......................................................................... – WR


Counts instances (from 0 to 65535) of buffer full error on internal communications port 3
(used by faceplate and analog inputs).

2-30
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

30 Port 3 Communications Error Counter (CMERRCTR)...................................................– WR


Counts instances (from 0 to 65535) of framing, parity errors, etc. on internal communications
port 3 (used by faceplate and analog inputs).

31 Keyboard Error Counter (KBERRCTR) ...........................................................................– WR


Counts instances (from 0 to 65535) of no response from keyboard.

32 Flash Periods: Slow - Off Counts (SFOFFCNT) ............................................................. CWR


Number of 50 msec ticks in the 'off' state of slow alarm flashing.

33 Flash Periods: Slow - On Counts (SFONCNT) ............................................................... CWR


Number of 50 msec ticks in the 'on' state of slow alarm flashing.

34 Flash Periods: Fast - Off Counts (FFOFFCNT) .............................................................. CWR


Number of 50 msec ticks in the 'off' state of fast alarm flashing.

35 Flash Periods: Fast - On Counts (FFONCNT) ................................................................ CWR


Number of 50 msec ticks in the 'on' state of fast alarm flashing.

36 Flash Periods: Activity - Off Counts (ACOFFCNT) ........................................................ CWR


Number of 50 msec ticks in the 'off' state for flashing lines and bars when instrument
generated activity messages (bad quality, error messages such as OVERFLOW, etc.) occur.

37 Flash Periods: Activity - On Counts (ACONCNT) .......................................................... CWR


Number of 50 msec ticks in the 'on' state for flashing lines and bars when instrument
generated activity messages (bad quality, error messages such as OVERFLOW, etc.) occur.

38 Entry Timeout (ENTRTIME) ............................................................................................. CWR


Number of 50 millisecond ticks before an entry activity (ENT flashing) will time out and return
to the previous state.
USER 1 to 65534 ENTry mode will timeout and change x millisecond ticks after last
keyboard entry change. Enter 1 to 65534 in the subsequent field.
NONE 65535 No timeout. Entry time out disabled and ENT will continue to flash
until the TAG key is pressed.

39 Date Format (DATEFMT).................................................................................................. CWR


Format for displaying date.
US 0 mm/dd/yy
EURO 1 dd/mm/yy

40 Shutdown Instrument on Faceplate Comm Failure (SHUTFAIL).................................. CWR


Use to shut down the instrument after a faceplate communication error lasts for 3 seconds.
NO 0 Instrument will not shut down after a faceplate communication error.
YES 1 Instrument will shut down 3 sec. after a faceplate communication
error.

60 Remote Display Number Input (REMDISP)..................................................................... CWR


NONE, source pointer connection to a COUNT variable or a local COUNT variable. Writeable
only if local. Value should be <= the number of displays in display list, and will be ignored
otherwise. When a remote or local input is present, normal front face navigation via the tag
key is disabled. See additional description for Remote Display Input on page 2-34.

2-31
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

2.3.3 Display Interface Block Configuration Screens


The displays used to configure the display block are described below.

Display Interface Block Page 1


Use this page to identify the display interface block, access.the display list, and identify the
power up display.

Figure 2-9. Display Interface Block (DIF), Edit Display, page 1

Name
Up to 8 alphanumeric characters identifying block.

Description
Any notes used to describe the block.

Accept bad inputs (See attribute 3 description.)


f checked, Block runs without a check on input quality. If not checked, the Run Complete
input is treated as FALSE when the input quality is BAD.

Instrument tag (See attribute 13 description.)


DEVICE, or up to 8 ascii characters identifying the instrument.

Display to use at power up (See attribute 14 description.)


Device, Previous, User. User requires a display name entry.

2-32
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

Remote display input: (See attribute 60 description.)


A count type input can be made to REMDISP, or it can be a local (internal) value or not
used. Writeable only if local. Value should be <= the number of displays in display list
(index number of a tag name from the display list), and will be ignored otherwise. When a
remote or local input is present, normal front face navigation via the tag key is disabled.

This is an override display which will prevent scrolling through any other displays on the
instrument front face. It is controlled using index numbers that are associated with the
order of display tags listed in the display list (index number is 1 for the first display tag
listed, index number 2 is for the second tag and so forth (index number 0 is used for the
Device Display). If the input has a value of 0 you will be taken to the device display and
you will need to press the TAG key to return to the user displays before the remote display
input can change user displays.

Display tag list


A display list is a list of Display block tags, each enclosed in double quotes and terminated by
a semi-colon. Comments may also be included in the list. Comments begin with the
characters /* and end with the characters */, and all characters in between are part of the
comment.

Example Display List, with optional comments.

"TIC-101"; /* Temperature - Section A. */


"TIC-102"; /* Temperature - Section B. */
"TIC-103"; /* Temperature - Section C. */

Display List Rules


• Each Display block tag entered in the Display List must be defined in some Display block.
• A Display block tag entered for Power Up Display must also appear in the Display List.
• The Display List is checked for proper syntax.
• The Display List determines the order in which displays are presented. Use the up and
down arrows to change the order.

2-33
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

Display Interface Block Page 2


Use this page to set values for timeouts and passwords.

Figure 2-10. Display Interface Block (DIF), Edit Display, page 2

Password timeout (minutes) (See attribute 17 description.)


The time in minutes (1 - 54) that the tune and configure access levels will timeout and return
to the operator level after last keyboard activity. No timeout = Current access level will not
timeout and change.

Entry timeout (50 millisecond ticks) (See attribute 38 description.)


Number of seconds before an entry activity (ENT flashing) will time out and return to the
previous state after last keyboard entry change. No timeout = Entry time out disabled and
ENT will continue to flash until the TAG key is pressed.

Tune password
NONE (0), 1 - 65535. Enter numeric characters ranging from 1 to 65535 to get a tune
password. The password is used by the instrument to get to the tuning displays.

Configuration password
NONE (0), 1 - 65535. Enter numeric characters ranging from 1 to 65535 to get a
configuration password. The password is used by the instrument to get to the configuration
displays.

2-34
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

Display Interface Block Page 3


Use this page to set values for display flash periods, and set values for display flash and
beep characteristics,

Figure 2-11. Display Interface, Typical Block Connections

Action on low priority alarm


Flash display (See attribute 25 description.) Use to specify if an unacknowledged low
priority process alarm (from PAD Block) will cause the entire display to flash. The LED
always flashes on an unacknowledged alarm.
Beep (See attribute 26 description.) Use to specify if an unacknowledged low priority
process alarm (from PAD Block) will cause the beeper to beep.
Rate (See attribute 27 description.) Low Priority process alarm flash rate for LED, display
and beeper.

Low/High priority breakpoint (See attribute 18 description.)


All process alarms with priority >= this value (2 - 255) are considered LOW priority for
display purposes.

Action on high priority alarm


Flash display (See attribute 22 description.) Use to specify if an unacknowledged high
priority process alarm (from PAD Block) will cause the entire display to flash. The LED
always flashes on an unacknowledged alarm.
Beep (See attribute 23 description.) Use to specify if an unacknowledged high priority
process alarm (from PAD Block) will cause the beeper to beep.
Rate (See attribute 24 description.) High Priority process alarm flash rate for LED, display
and beeper.

2-35
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

Action on diagnostic event


Display Flash (See attribute 19 description.) Use to specify if an unacknowledged
diagnostic will cause the entire display to flash. The LED always flashes on an
unacknowledged alarm.
Beep (See attribute 20 description.) Use to specify if an unacknowledged diagnostic will
cause the beeper to beep.
Rate (See attribute 21 description.) Diagnostic flash rate for LED, display and beeper.

Date display format (See attribute 39 description.) Choose US format (mm/dd/yy) or EURO
format (dd/mm/yy)

Flash periods (in 50 millisecond ticks)


Slow - Off (See attribute 32 description.)
Slow - On (See attribute 33 description.)
1 to 255. The number of 50 msec ticks in the "off" or “on” state of the slow alarm display
flashing condition.

Fast - Off (See attribute 34 description.)


Fast - On (See attribute 35 description.)
1 to 255. The number of 50 msec ticks in the "off" or “on” state of the fast alarm display
flashing condition.

Activity - Off (See attribute 36 description.)


Activity - On (See attribute 37 description.)
1 to 255. The number of 50 msec ticks in the "off" or “on” state of the activity display flashing
condition for flashing lines and bars when instrument generated activity messages (bad
quality, error messages such as OVERFLOW, etc.) occur.

2.3.4 Display Interface Block Diagnostics and Events


The event codes (and their suggested text messages) for the display interface block are
given below. See data base attributes descriptions for additional information. See the
system event block for a description of event transitions.

Display Interface Block Page 4


Use this page to configure diagnostic event suppression.

Diagnostic suppression group (See attribute 4 description.)


NONE, 1 - 7.

Faceplate Communication Error (See attribute 5 description.)


Enable, Suppress (checked).

No Keyboard Response (See attribute 8 description.)


Enable, Suppress (checked).

Shutdown instrument on faceplate communication failure (See attribute 40 description.)


Yes (checked).

2-36
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

Event Code Type Description


4 Ack Only Diag FACEPLATE COMMUNICATIONS ERROR. An error
occurred when trying to communicate with the faceplate.
Instances are counted in CMERRCTR or BFULLCTR.

5 Ack Only Diag NO KEYBOARD RESPONSE. The faceplate failed to


respond when keyboard data was requested. Instances
are counted in KBERRCTR.

2-37
MOD 30ML Functions

DISPLAY INTERFACE BLOCK

2.3.5 Typical Block Connections for Display Interface Block


Typical block connections for the display interface block are shown below.

EX DIF
R esu lt RE MD ISP

Figure 2-12. Display Interface, Typical Block Connections

2-38
MOD 30ML Functions

STATE TABLE BLOCK

2.4 STATE TABLE BLOCK


The State Table block is a data only block used by the various display blocks, such as the
Display (DISP) and Process Alarm Display (PAD) blocks. The block consists of a set of
tables, each identified by a unique 1-8 character ASCII string. Each table contains a list of
values and associated mnemonic strings that are displayed for the corresponding value.
State table names are maintained at the Application Builder only and are not downloaded to
the instrument. There is only one state table block in an instrument database.

To display a state field value, the name of the state table to be used must me specified. The
value is then compared to the values in the table and if found, the associated mnemonic is
displayed. If the value is not in the table, the table specified default string is displayed.

Other database blocks refer to the table entries by its name, the 1-8 character string id and is
not case sensitive. The name can be made up of letters, numbers and underscores, the first
character must be a letter. Duplicate table names are not allowed.

2.4.1 State Table Block Parameters


The mnemonics, valid values, and data types for all fields that may be selected for display
and/or be used in making connections are listed in Table 2-4. A description of each attribute
is provided in the attribute list that follows the table.

Table 2-4. State Table Block Attributes, Valid Values, Mnemonics and Data Types
Field Mnemonic Valid Values CWR Data Type Attr
Version VERSION 1 ––R Long State 00
Block Length BLKLEN ––R Count 01
State STATE RUN (0) ––R Short State 02
Bad Inputs BADINP Accepted (1) ––R Discrete 03

Block Type
ST This is the state table block type.

00 Block Version (VERSION) ................................................................................................ – – R


The state table block is at version 1.

01 Block Length (BLKLEN) .................................................................................................... – – R


Number of database bytes taken by the block. Always an even number.

02 State (STATE) .................................................................................................................... – – R


Block state is always RUN. See IB-23G600 (I/O Logic Book 1) Section 2.4.1, State
Changes for additional information on block states.

RUN 0 Normal Operation. Block is always executed.

03 Bad Inputs Accepted (BADINP) ....................................................................................... – – R


See IB-23G600 (I/O Logic Book 1) Section 2.3.2, Data Quality for additional information.
Accepted 1 Block does not check input quality.

2-39
MOD 30ML Functions

STATE TABLE BLOCK

2.4.2 State Table Block Configuration Screens


The displays used to configure the state table block are described below.

State Table Block Page 1


Use this page to identify the state table block.

Figure 2-13. State Table Block (ST), Edit Display

Name
Up to 8 unique alphanumeric characters identifying block.

Description
Any descriptive text. Maximum of 80 alphanumeric or symbol characters.

2-40
MOD 30ML Functions

STATE TABLE BLOCK

State Table Block Page 2


Use this page to edit state tables. The same editing rules as described in the Display block
(Section 2.2.3) and the Display interface block apply.

Figure 2-14. State Table Block State Tables using Text Editor

Zero or more state tables can be entered in the configurator, each having the following
format.

name, length, default


{ /* Comments */
value1, mnemonic1;
value2, mnemonic2;
o
o
o
valueN, mnemonicN;
}

Name
A unique 1-8 ASCII string that identifies the table (must start with a letter and contain only
letters, digits, and underscores). Other database blocks (currently TL, DISP, and PAD) refer
to the table by this name, which is not case sensitive.

Length
Character length of mnemonic entries (maximum is 8).

2-41
MOD 30ML Functions

STATE TABLE BLOCK

Default
An ASCII string enclosed in double quotes (can contain any displayable character, see
Appendix B). String should contain no more characters than defined by ‘length’. This string
is displayed when a value does not match any of the values in the table.

Value
The values are integers between 0 and 65535. Duplicate values in the table are not allowed.

Mnemonic
An ASCII string, enclosed in double quotes, that associates a mnemonic with a value (can
contain any displayable character, see Appendix B). Duplicate mnemonics in the table are
allowed. String should contain no more characters than defined by ‘length’.

Comments
Comments may be included in the state tables and are ignored. Comments begin with the
characters /* and end with the characters */, and all characters in between are part of the
comment.

Example state table, with optional comments.

FRUIT, 6, "???" /* This is an example state table. */


{
0, "APPLE"; /* An apple a day keeps the doctor away! */
1, "ORANGE"; /* The sunshine fruit! */
2, "GRAPE"; /* Careful! Grape juice can stain! */
4, "KIWI"; /* A proud product of New Zealand!. */
}

2-42
MOD 30ML Functions

TUNE LIST BLOCK

2.5 TUNE LIST BLOCK


The tune list block contains a list of attributes accessible as tunable parameters from one or
more display blocks. This block is not executed. It just provides the information used by the
display block. Entries consist of the specific tuning parameter, along with information
required to display and edit the value. The display block TUNE STATEMENT invokes tuning
displays.

2.5.1 Tune List Block Parameters


The mnemonics, valid values, and data types for all fields that may be selected for display
and/or be used in making softwiring connections are listed in Table 2-5. A description of each
attribute is provided in the attribute list that follows the table.

Table 2-5. Tune List Block Attributes, Valid Values, Mnemonics and Data Types
Field Mnemonic Valid Values CWR Data Type Attr
Version VERSION 1 ––R Long State 00
Block Length BLKLEN ––R Count 01
State STATE RUN (0) ––R Short State 02
Bad Inputs BADINP Accepted (1) ––R Discrete 03
Tuned Variable TUNEVAR – WR Count 04

Block Type
TL This is the tune list block type.

00 Block Version (VERSION) ................................................................................................ – – R


The tune list block is at version 1.

01 Block Length (BLKLEN) .................................................................................................... – – R


Number of database bytes taken by the block. Always an even number.

02 State (STATE) .................................................................................................................... – – R


Block state is always RUN. See IB-23G600 (Logic Book 1) Section 2.4.1, State Changes
for additional information on block states.

RUN 0 Normal Operation. Block is always executed.

03 Bad Inputs Accepted (BADINP) ....................................................................................... – – R


See IB-23G600 (Logic Book 1) Section 2.3.2, Data Quality for additional information.
Accepted 1 Block does not check input quality.

04 Tuned Variable (TUNEVAR) ..................................................................................................– WR


This is the input number which is currently being tuned or which will be presented first when
the tuning display is invoked. (A value of zero corresponds to the UP arrow indicator for
exiting tuning).

2-43
MOD 30ML Functions

TUNE LIST BLOCK

2.5.2 Tune List Block Configuration Screens


The displays used to configure the tune list block are described below.

Tune List Block Page 1


Use this page to identify the tune list block.

Figure 2-15. Tune List Block (TL), Edit Display


Name
Up to 8 alphanumeric characters identifying block.
Description
Any descriptive text.

Tune List Inputs Page 2


Use this page to identify the tune list inputs (up to 99) and associate display formats.

Figure 2-16. Tune List Inputs, Edit Display, page 1 (add input)

2-44
MOD 30ML Functions

TUNE LIST BLOCK

Select Add to browse for and add a group of tags to the tune list and then select Modify to
specify input data for each tag. Use Delete to remove a tune list input.

Move Up, Move Down


Select the item to be moved up or down and then select the Move Up or Down button to
move the item.

Duplicate
Select the item to be duplicated and then select the Duplicate button to make a copy (default
name is assigned).

Specify Input Data


The Specify Input Data menu is used to define formats and names for tune list inputs

Name
Eight characters that start with a
letter and contain only letters, digits,
and underscores. This becomes the
unique name of the input for
reference in edit when expressions.
An input, if used, must be named and
point at valid data.

Display format name


The format name is optional. If no
name is entered, a default format will
be used . This is useful if the input is
only used for ‘Edit When’
expressions in the display block (no
format name required).

Enter a name when the variable associated with the input will
appear in the tuning scroll list. See Table 2-6 for display formats and supported input data
types. The data type of an input must be compatible with a referenced format.

Show this input in list


Do not check this box if the input is only used for ‘Edit When’ expressions in the display block
(no format name required). Select this box when the variable associated with the input will
appear in the tuning scroll list.

Line 1 text
(DISP), or USER. If DISP is selected the display block tag will be placed on display line 1. If
USER is selected, the text in the next field will be placed on display line 1. Text can be any 8
displayable characters (see Appendix B).

Line 2 text
This text will be placed on display line 2. Text can be any 8 displayable characters (see
Appendix B).

2-45
MOD 30ML Functions

TUNE LIST BLOCK

Tune List Display Formats


Use this display page to configure up to 512 format types for a tune list block. Multiple inputs
can be assigned the same format.

Figure 2-17. Tune List Display Formats, Edit Display, page 1

Select Add or Modify to edit formats and Delete to remove a format.

Move Up, Move Down


Select the item to be moved up or down and then select the Move Up or Down button to
move the item.

Duplicate
Select the item to be duplicated and then select the Duplicate button to make a copy (default
name is assigned).

Name
Eight characters that start with a letter and contain only letters, digits, and underscores. This
becomes the unique name of the format for reference in this block.

Format type:
Table 2-6 lists the different display format types and what fields are active for each type. A
referenced format cannot be NONE.

2-46
MOD 30ML Functions

TUNE LIST BLOCK

Low Limit:
Numeric entry that is the minimum allowed operator entry. Low limit must not exceed high
limit. For line display, this is the minimum allowed operator entry. For a bar display, it is the
value for which the bar will indicate 0% (center scale for deviation).

High Limit:
Numeric entry that is the maximum allowed operator entry. For line display, this is the
maximum allowed operator entry. For a bar display, it is the value for which the bar will
indicate 100%.

Entry Method:
None (entry is not allowed), Immediate (value changes as change is made), Enter Req’d (key
defined as ENT for enter must be pressed to make change). Entry method cannot be
IMMEDIATE for TIME1 - TIME4, ASCII, HEX, and DATE display formats.

Engineering Units:
A 4-character string to appear after a line formatted variable may contain any displayable
characters and the first non-blank character cannot be a digit.

Table 2-6. Tune List Display Formats, Supported Data Types and Active Fields
Display Entry Eng State** Edit
Supported Data Types* Limits
Format Method Units Table When
Float0 X Y Y N Y Y
Float1 X.X Y Y N Y Y
Float2 X.XX Y Y N Y Y
Float3 X.XXX Y Y N Y Y
Float4 X.XXXX Y Y N Y Y
Float5 X.XXXXX Y Y N Y Y
Float6 X.XXXXXX Y Y N Y Y
Integer1 Discrete, Short State, Long State Y Y N Y Y
Integer2 Count Y Y N Y Y
Integer4 Millisecond Time Y Y N Y Y
Time1 HH:MM:SS Y N N Y Y
Time2 M:SS.SSS Y N N Y Y
Time3 HHHH:MM Y N N Y Y
Time4 MM:SS.SSS Y N N Y Y
State Discrete, Short State, Long State, Count Y N Y N Y
ASCII ASCII Y N N N Y
Hex Hex Y N N N Y
Date Date Y N N N Y

* Float0 through Float6 are Floating Point data types and Time1 through Time4 are
millisecond time types.
** When display format is STATE:
- A Display State Table name must be entered.
- An Entry State Table name must be entered, when entry method is anything but NONE.
- State Table names referenced must be defined in the State Table (ST) block.

2-47
MOD 30ML Functions

TUNE LIST BLOCK

Display State Table:


Name of a state table to be used for display of a variable. The value of the variable is
compared to the values in the state table and if found, the associated mnemonic is displayed.
Otherwise, the table specified default string is displayed.

Entry State Table:


Name of a state table defining the allowed entries for a variable. When pressing the up or
down keys, only these values/mnemonics are listed for possible entry via the ENT key.

Edit When:
A standard expression that when TRUE defines when the displayed variable can be changed
('edited') by the operator. If an expression is not entered, the displayed variable can always
be changed. Entry method must be immediate or entry required (otherwise this field is
ignored).

2.5.3 Typical Block Connections for Tune List Block


Typical block connections for the tune list block are shown below.

Figure 2-18. Tune List, Typical Block Connections

2-48
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

2.6 PROCESS ALARM DISPLAY BLOCK (PAD)


The process alarm block is used to initiate a discrete alarm signal to advise the operator of
an irregular process condition. The alarm is calculated by comparing an alarm source with a
trip value. The alarm source (input) is usually a value in some other block that the operator
wishes to monitor. The type of comparison made is specified by the trip condition. Depending
on the result of the comparison, the alarm is considered active or clear (inactive).

The alarm source value is shown on line 6 of the front panel display. The source value can
also be indicated on a bar display that includes an intensified segment identifying the trip
point.

This block has two discrete outputs that indicate whether the alarm is active or
acknowledged. These outputs can be used to initiate logic in other blocks throughout the
database. The user can acknowledge the existence of an alarm by any one of several
methods as described in Section 2.6.1. A functional block diagram of the block is shown in
Figure 2-19.

Less
Less or Equal
Greater
Greater or Equal
Equal
Not Equal Trip Condition Trip Value * Report Events
* Data Type may be? Deviation
Count, Discrete, Short State,
Long State, Floating Point,
Msec Time, or Date
Discrete NO
LSP
Acknowledge GOOD
Input YES
NONE BAD

Process Alarm Calculation


(See example diagram) A
LSP *
GOOD U
Alarm Input
Value
BAD

State
(RUN, HOLD,
OFF, DEBUG))
Suppress TAG1
Hysteresis Priority
(Floating Point Calculation
(0 to 255) (YES, NO)
Bad Inputs Alarm) TAG2
Accepted
(YES, NO)

Scaling

Alarm Input LSP Quality UQ HRNG LRNG


Quality Check
Acknowledge Input LSP Quality AQ

Figure 2-19. Functional Block Diagram, Process Alarm Display Block

2-49
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

2.6.1 Process Alarm Block Operation


Active alarms are determined by comparing the value of the alarm source with the trip value.
The order of comparison is: Alarm Input value, Trip Condition, Trip Value. If the result of the
comparison is true, the alarm is active. Otherwise, the alarm is clear. Using the example
shown in Figure 2-20, let the trip value be 750 and the trip condition be greater than or equal.
While the alarm source value is less than 750, the alarm is clear, but when its value is greater
than or equal to 750, the alarm becomes active. The alarm becomes clear again when it falls
below 750 minus any hysteresis value.

HYSTERESIS (a floating-point value) is used to determine when an active floating point


alarm becomes clear. A floating-point value often represents some process variable. Since
there is often noise associated with a process variable, hysteresis is used to suppress this
noise. In other words, the use of hysteresis prevents the alarm state from rapidly fluctuating
between active and clear.

Version 2 of this block adds the following features. When the TRIP CONDITION is
DEVIATION, the target value is always zero. The TRIP VALUE, HYSTERESIS and HI
RANGE values are symmetrical. For example, if the TRIP VALUE is 5.0 it is also –5.0; if the
HYSTERESIS is 1.0, it is also –1.0; and if the HIRANGE is 25.0 which indicates the TOP of
the bar graph, then the bottom of the bar graph will indicate –25.0. The following
configuration rules apply.

• Used with floating point alarms only


• TRIP VALUE must be a positive value
• HYSTERESIS must be a positive value and less than TRIP VALUE
• BAR FORMAT must be DEV or NONE
• HIRANGE must be a positive value and greater than TRIP VALUE
• LORANGE is not used

The following shows how the alarm calculation is done for the seven configured trip
conditions (when alarm becomes active). Note that hysteresis is not used when the trip
condition is EQUAL or NOT EQUAL. Thus the use of these two trip conditions with floating
point variables may lead to rapid fluctuations as mentioned above.

Condition When alarm becomes active When active alarm becomes clear
LESS ALARMINP < TRIPVAL ............. ALARMINP >= TRIPVAL + HYST
LESS EQUAL ALARMINP <= TRIPVAL ........... ALARMINP > TRIPVAL + HYST
GREATER ALARMINP > TRIPVAL ............. ALARMINP <= TRIPVAL – HYST
GREATER EQUAL ALARMINP >= TRIPVAL ........... ALARMINP < TRIPVAL – HYST
EQUAL ALARMINP == TRIPVAL ........... ALARMINP != TRIPVAL
NOT EQUAL ALARMINP != TRIPVAL ............ ALARMINP == TRIPVAL
DEVIATION ALARMINP > HITRIPVAL.......... ALARMINP <= HITRIPVAL – HYST
DEVIATION ALARMINP < LOTRIPVAL......... ALARMINP >= LOTRIPVAL + HYST

2-50
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

HIGH ALARM CALCULATION


Alarm TRUE
Active
FALSE
Configured Trip Condition is >=

1000 Alarm Value >= Trip Value

Alarm Clear
750
Process Input
Floating Point
Value
500
Hysteresis Value (50)

Alarm Value < Trip Value - Hysteresis


250

0.000000

0 5 10 15 20 25 30 35
Time (Group Scan Cycles)

Figure 2-20. Example of Process Alarm Tripping (Floating Point Data)

An alarm can be acknowledged in 1 of 6 ways:


• By using the Alarm Acknowledge discrete input. This acknowledgment is edge triggered
so that a value of 0 (FALSE) followed by a value of 1 (TRUE) acknowledges the alarm.
The quality of this input is ignored if bad inputs are accepted.
• By using the Process Alarm Acknowledge discrete input to the System Event block. This
acknowledges all process alarms.
• By using the Global Acknowledge discrete input to the System Event block. This
acknowledges all diagnostic alarms, process alarms, and notification/request messages.
The System Event block handles global acknowledgment if the block or its loop is in
HOLD or OFF. Global acknowledgment will not occur if the block or its loop is in DEBUG.
• By setting the Suppress Alarm Calculation to YES.
• By receiving an alarm acknowledge message into this block’s message handler from
some other device which causes a FALSE value to be written to the Unacknowledged
field of this block.
• By writing the value FALSE to the Unacknowledged field of this block.

2-51
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

2.6.2 Process Alarm Display Block Parameters


The mnemonics, valid values, and data types for all fields that may be selected for display
and/or be used in making softwiring connections are listed in Table 2-7. A description of each
attribute is provided in the attribute list that follows the table.

Table 2-7. Process Alarm Display Block Attributes, Valid Values, Mnemonics, and Data Types
Field Name / Attribute Mnemonic Valid Values CWR Data Type Attr
Version VERSION 1, 2 – – R Long State 00
Block Length BLKLEN – – R Count 01
State STATE RUN (0), HOLD (1), OFF (2), CWR Short State 02
DEBUG (3)
Bad Inputs BADINP REJECTED(0) CWR Discrete 03
ACCEPTED(1),
Alarm Priority PRIORITY 0 to 255 (0 = No CWR Long State 04
Unacknowledged Alarm)
Alarm Activate Condition TRIPCOND LESS(0), LESS EQUAL(1), CWR Short State 05
(Trip Condition) GREATER (2), GREATER
EQUAL (3), EQUAL (4),
NOT EQUAL (5), or
DEVIATION (6)
Suppress calculation? SUPPRES NO (0), YES (1) CWR Discrete 06
S
Unacknowledged U FALSE (0), TRUE (1) – WR Discrete 07
Unacknowledged Quality UQ GOOD (0), BAD (1) – WR Discrete 08
Alarm Active A FALSE (0), TRUE (1) – WR Discrete 09
Active Quality AQ GOOD (0), BAD (1) – WR Discrete 10
Report events? REPORT NO (0), YES (1) CWR Discrete 11
Alarm Activate Value TRIPVAL Local data for Floating-Point, CWR Same as 12
(Trip Point) Count, Date, Msec Time, ALARMINP
Discrete, Short State, or
Long State data types.
Line 1 Text TAG1 1-8 character ASCII string CWR ASCII 13
Line 2 Text TAG2 1-8 character ASCII string CWR ASCII 14
Hi Range HRNG Top of alarm input range CWR Same as 15
ALARMINP
Lo Range LRNG Bottom of alarm input range CWR Same as 16
ALARMINP
Alarm Input ALARMINP LSP or local data CWR Floating Pt, 17
Count, Date,
Msec Time,
Discrete,
Short State,
Long State,
Ack Input ACKINP NONE or LSP C – R Discrete 18
Hysteresis HYST 0.000000 to any positive CWR Floating Pt 19
Floating Point Value

2-52
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

Block Type
PAD This is the Process Alarm Display Block type. Block type address code is 52.

00 Version (VERSION) ........................................................................................................... – – R


The PAD block is at version 2.

01 Block Length (BLKLEN) .................................................................................................... – – R


Number of data base bytes used by this block.

02 State (STATE) .................................................................................................................... CWR


All block state changes are reported as events. See IB-23G600 (I/O Logic Book 1) Section
2.4.1, State Changes for additional information.
RUN 0 Normal Operation. Block is executed.
HOLD 1 Block is not executed. Qualities retain previous values.
OFF 2 Block is not executed. Qualities will be BAD.
DEBUG 3 Block is not executed. No fields are updated. Most attributes are
writeable.

03 Bad Inputs (BADINP)......................................................................................................... CWR


See IB-23G600 (I/O Logic Book 1) Section 2.3.2, Data Quality for additional information.
REJECTED 0 Block checks data quality on the alarm input and if it is BAD, the
unacknowledged and active outputs are left unchanged and their
qualities are set to bad. When the quality of the acknowledge input is
bad, it simply means this signal is ignored and has no affect on the
unacknowledged and active outputs or their qualities.
ACCEPTED 1 Block runs its algorithm without a check on input quality and output
quality is set to good.

04 Alarm Priority (PRIORITY)................................................................................................ CWR


0 to 255 When 0, the alarm unacknowledged field is suppressed and left at
false even when an alarm becomes active. When 1 through 255, the
priority value is ignored by this block; however, it can be used by PC-
30 for alarm reporting (e.g. alarms of different priorities may be
displayed in different colors).

05 Alarm Activate Condition (TRIPCOND)........................................................................... CWR


The alarm activate condition (trip condition)is used to compare the alarm input value with the
trip value in the alarm calculation.
LESS 0 Alarm becomes active when the Alarm Input is LESS than (<) the
Trip Value and becomes clear when the Alarm Input is GREATER
OR EQUAL than (>=) the Trip Value plus any Hysteresis value.
LESS OR EQUAL 1 Alarm becomes active when the Alarm Input is LESS OR EQUAL
than (<=) the Trip Value and becomes clear when the Alarm Input is
GREATER than (>) the Trip Value plus any Hysteresis value.
GREATER 2 Alarm becomes active when the Alarm Input is GREATER than (>)
the Trip Value and becomes clear when the Alarm Input is LESS OR
EQUAL than (<=) the Trip Value minus any Hysteresis value.

2-53
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

GREATER OR 3 Alarm becomes active when the Alarm Input is GREATER OR


EQUAL EQUAL than (>=) the Trip Value and becomes clear when the Alarm
Input is LESS than (<) the Trip Value minus any Hysteresis value.
EQUAL 4 Alarm becomes active when the Alarm Input is EQUAL to (==) the
Trip Value and becomes clear when the Alarm Input is NOT EQUAL
to (!=) the Trip Value.
NOT EQUAL 5 Alarm becomes active when the Alarm Input is NOT EQUAL to (!=)
the Trip Value and becomes clear when the Alarm Input is to EQUAL
(==) the Trip Value.
DEVIATION 6 Alarm becomes active when the Alarm Input is GREATER than (>)
the High Trip Value or LESS than (<) the Low Trip Value. Alarm
becomes clear when the Alarm Input is to LESS OR EQUAL than
(<=) the High Trip Value minus the Hysteresis or when Alarm Input is
to GREATER OR EQUAL than (>=) the Low Trip Value plus the
Hysteresis .

06 Suppress calculation? (SUPPRESS) .............................................................................. CWR


NO 0 Alarm active is set true or false as a result of the alarm calculation
every instrument cycle, and alarm unacknowledged is set to true
only when the alarm is active this cycle and was clear the previous
cycle. Alarm unacknowledged is set to false when one of the alarm
acknowledgment signals mentioned in Attribute No. 7 is detected.
YES 1 Alarm calculation is suppressed and alarm active is clear (set to
false), alarm is acknowledged (Attribute No. 7, is set to false), and
the output qualities are set to good.

07 Unacknowledged (U) ........................................................................................................ – WR


Writing a FALSE to this output is reported as an event. If the block is in RUN or HOLD and its
loop is in RUN or HOLD, then the quality is also set GOOD, otherwise the quality is left
unchanged. Acknowledgment by the alarm acknowledge message is always allowed,
regardless of block or loop state, and is reported as an event. When the block or its loop is in
DEBUG, a write will not be reported as an event.
FALSE 0 A block output indicating the alarm has been acknowledged. The
alarm can be acknowledged as described in Section 2.6.1. Since
the user can not enter initial data, when this block is initially added to
the database in the configurator, this field will be FALSE (clear and
acknowledged), and data quality set bad.
TRUE 1 A calculated block output indicating the alarm calculation has
determined there is an unacknowledged alarm.

08 Unacknowledged Quality (UQ)........................................................................................ – WR


Writing this output is allowed, but only if the block or its loop is in DEBUG (write will not be
reported as an event).

GOOD 0 Quality is left GOOD when the quality of the acknowledge input is
bad. Quality is also GOOD when a FALSE is written to the
unacknowledged attribute and the block is in RUN or HOLD and its
loop is in RUN or HOLD.
BAD 1 Quality is set BAD when the quality of the alarm input is bad.

2-54
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

09 Alarm Active (A) ................................................................................................................– WR


The Alarm Active status output is a calculated block output that uses the following order of
comparison: Alarm Input value, Alarm Activate (trip) Condition, Alarm Activate (trip) Value. If
the result of the comparison is true, the alarm is active. Otherwise, the alarm is clear. Writing
this output is allowed, but only if the block or its loop is in DEBUG (write will not be reported
as an event).
TRUE 1 A calculated block output indicating the alarm calculation has
determined there is an alarm.
FALSE 0 A calculated block output indicating the alarm calculation has
determined there is no alarm. Since the user can not enter initial
data, when this block is initially added to the database in the
configurator, this field will be FALSE (clear and acknowledged), and
data quality set bad.

10 Active Quality (AQ) ...........................................................................................................– WR


Writing this output is allowed, but only if the block or its loop is in DEBUG (write will not be
reported as an event).

GOOD 0 Quality is left GOOD when the quality of the acknowledge input is
bad.
BAD 1 Quality is set BAD when the quality of the alarm input is bad.

11 Report events? (REPORT) ............................................................................................... CWR


The reporting of alarm events to the system event queue is determined by configuring or
writing this attribute.

NO 0 No reports are made.


YES 1 Reporting of alarm occurrence and acknowledgment events is made
to the System Event queue. Note that this does not affect reporting
of block state transitions.
The following alarm event transitions are reported when an alarm
occurs: See IB-23G600 (I/O Logic Book 1) Section 3.4.5, Event
Transitions for additional information.

• 3 Alarm goes active and unacked.


• 4 Alarm goes active but not unacked.
• 5 Alarm goes active while unacked.
• 6 Alarm goes clear while unacked.
• 7 Alarm goes clear while acked.
• 8 Alarm cleared by suppression.
• 9 Alarm acknowledged.
• 10 Alarm globally acknowledged.
• 11 Alarm acked by suppression.
• 12 Alarm suppressed.
• 13 Alarm enabled.

2-55
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

12 Alarm Activate Value (TRIPVAL) ..................................................................................... CWR


The alarm activate value (trip point) is used with the alarm activate condition and the alarm
input value in the alarm calculation. Configuration of this attribute requires selection of a data
type and entry of a value:
Data Type Select a data type which matches the Alarm Input (Attr. #17 ) data type;
floating point, count, discrete, short state, long state, msec time, or date.
Value Enter the trip point value in the selected data type.

13 Line 1 Text (TAG1) ............................................................................................................ CWR


Text string displayed on first line of the alarm display. The string is limited to 8 characters.

14 Line 2 Text (TAG2) ............................................................................................................ CWR


Text string displayed on second line of the alarm display. The string is limited to 8 characters.

15 Hi Range (HRNG) .............................................................................................................. CWR


100% alarm input value for bar displays or the deviation from low range value for deviation
displays (Figure 2-23).

16 Lo Range (LRNG).............................................................................................................. CWR


0% alarm input value for bar displays or mid-point for deviation displays (Figure 2-23).

17 Alarm Input (ALARMINP).................................................................................................. CWR


This is the input value that is compared with the alarm activate value (trip point) to determine
when there is an alarm. Configuration of this attribute requires specification of the input data
type, and selection of the input source as either local or remote:
Data Type The data type can be floating point, count, date, msec time, discrete, short
state or long state.
Local An input value having the selected data type is entered in the Local field.
The local input can be written.
Remote Connection of an LSP to the alarm input overrides any existing local input
and provides the remote input. The Remote field shows the tag and
mnemonic of the remote input. The input value cannot be written when the
source is remote; the value is readable.

18 Acknowledge Input (ACKINP)..........................................................................................C – R


The acknowledge input is edge triggered so that a value of 0 (FALSE) followed by a value of
1 (TRUE) acknowledges the alarm.
NONE No alarm acknowledgment input. However, the alarm can still be
acknowledged in other ways as described in Section 2.6.1.
LSP A discrete variable is used to acknowledge an alarm and reset the input.

19 Hysteresis (HYST) ............................................................................................................ CWR


Hysteresis applies to floating point alarms only. A floating-point input value often represents
some process variable. Since there is often noise associated with a process variable,
hysteresis is used to suppress the noise. In other words, the use of hysteresis prevents the
alarm state from rapidly fluctuating between active and clear. Configure hysteresis by
entering a floating-point value that determines when an active alarm becomes clear
(inactive). The value cannot be negative.

2-56
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

2.6.3 Process Alarm Display Block Configuration Screen


The displays used to configure the process alarm display block are described below. Use
these displays to identify the process alarm display block, define alarm and acknowledge
inputs, set alarm priority, define alarm activation parameters, identify the display tag, and
define display features.

Figure 2-21. Process Alarm Display Block (PAD), General Page

Name
Up to 8 alphanumeric characters identifying the block.

Description
Any descriptive text.

State (See attribute 2 description.)


All block state changes are reported as events. Run, Hold, Off, Debug

Bad Inputs (See attribute 3 description.)


If checked, block runs without a check on input quality. If not checked, block checks data
quality on its inputs and will only update the result if its input is good. If the input is BAD, the
result is held at the previous value and the result quality is set BAD.

Alarm data type (See attribute 12 description)


The trip value must match the selected alarm data type: Floating-point, Count, Discrete,
Short State, Long State, Millisecond Time, Date.

2-57
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

Alarm input (See attribute 17 description)


This is the alarm value that is compared with the trip value to determine when there is an
alarm. It can be an internal value or any source variable used as a block input value (not
operator writeable).

Trip condition (See attribute 5 description)


The trip condition is used to compare the alarm input value with the trip value in the alarm
calculation. The following table shows how the alarm calculation is done for the six
configured trip conditions (When alarm becomes active). Note that hysteresis is not used
when the trip condition is EQUAL or NOT EQUAL. The use of these two trip conditions with
floating point variables may lead to rapid fluctuations.

Trip value (See attribute 12 description)


A trip value having the same data type as the alarm input value. Value is used with the trip
condition and the alarm input value in the alarm calculation

Hysteresis (See attribute 19 description)


For floating point alarms only. A floating point value used to determine when an active alarm
becomes clear (inactive). The value cannot be negative. Since there is often noise
associated with a process variable, hysteresis is used to suppress this noise by preventing
the alarm state from rapidly fluctuating between active and clear.

Alarm priority (See attribute 4 description)


0 to 255. When 0, the alarm unacknowledged field is suppressed and left at false even when
an alarm becomes active. When 1 through 255, the priority value is ignored by this block;
however, it can be used by an external application for alarm reporting (e.g. alarms of different
priorities may be displayed in different colors).

Supress alarm calculation (See attribute 6 description)


NO (not checked) - Alarm active is set true or false as a result of the alarm calculation every
instrument cycle, and alarm unacknowledged is set to true only when the alarm is active this
cycle and was clear the previous cycle. Alarm unacknowledged is set to false when one of
the alarm acknowledgement signals mentioned below (Unacknowledged) is detected.
YES (checked) Alarm calculation is suppressed and alarm active is clear (set to false), alarm
is acknowledged (unacknowledged is set to false), and the output qualities are set to good.

Report alarm events (See attribute 11 description)


If checked, reporting of the following alarm occurrence and acknowledgement events is made
to the System Event queue . Note that this does not affect reporting of block state transitions.

Alarm goes active and unacked.


Alarm goes active but not unacked.
Alarm goes active while unacked.
Alarm goes clear while unacked.
Alarm goes clear while acked.
Alarm cleared by suppression.
Alarm acknowledged.
Alarm globally acknowledged.
Alarm acked by suppression.
Alarm suppressed.
Alarm enabled.

If not checked, no reports are made.

2-58
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

Figure 2-22. Process Alarm Display Block (PAD), Display Page

Line 6 display format


This field defines the display format for the numerical alarm input value displayed on Line 6 of
the instrument display. Table 2-8 lists the different display formats, and shows the supported
data types and active fields (engineering units or state table) for each format.

Engineering Units
A character string (up to four characters) displayed on line 6 with a floating point or integer
alarm input value. May contain any displayable characters where the first non-blank
character cannot be a digit.

State Table
When the display format is State, a state table name must be entered in this field and the
table must be defined in the State Table Block. The name must be a unique 1-8 character
ASCII string that starts with a letter and contains only letters, digits and underscores. Refer to
Section 2.4 State Table Block for additional information.

Line 1 Text (See attribute 13 description)


Text string displayed on first line of the alarm display. Up to 8 ASCII characters.

Line 2 Text (See attribute 14 description)


Text string displayed on second line of the alarm display. Up to 8 ASCII characters.

2-59
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

Bar display format


This field defines the alarm bar display format. Valid entries are as follows:
None Bar is not displayed.

Normal Bar displays alarm input with an intensified segment indicating the trip point. An
example of the bar format is shown in Figure 2-23.

Deviation Bar displays alarm input as a deviation from a zero deviation point that is
indicated by an intensified segment at midscale. A second intensified segment
identifies the alarm trip point. If the trip condition is DEVIATION, a third
intensified segment identifies the second alarm trip point.

An example of the deviation format is shown in Figure 2-23. Note that the deviation format
allows the scale to be expanded by configuring range limits that correspond to user defined
deviation limits rather than the full input range. When the bar is scaled for deviation limits of
±10°F as shown in Figure 2-23, each bar segment represents 0.4% of full range compared to
2% per segment for a full range display.

Setting the trip condition to DEVIATION allows full use of the bar so that a HIRANGE of 25.0
will indicate the TOP of the bar graph and the bottom of the bar graph will be –25.0.

Figure 2-23. Examples of Bar Displays for Alarms

2-60
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

Bar Format (Normal)


Lo Range The alarm input value which corresponds to 0% indication on the bar
display. Value must be less than or equal to high range.

High Range The alarm input value which corresponds to 100% indication on the bar
display. Value must be greater than or equal to low range.

Deviation Format
Zero point The alarm input value that corresponds to an indication of zero deviation on
the bar display. The zero deviation point appears as an intensified segment
at the mid point of the bar.

Max. Dev. The alarm input value that corresponds to the maximum positive deviation.
This value corresponds to 100 on the bar display, and 0 on the display
corresponds to the maximum negative deviation.

Action when TAG key is pressed


Select either "Return to previous display" or "Go to display with this tag:" and enter a valid
Display Block tag (DISPTAG) of a user display.

Table 2-8 Display Formats, Supported Data Types, and Active Fields
Display Supported Data Types* Eng State**
Format Units Table
Float0 X Y N
Float1 X.X Y N
Float2 X.XX Y N
Float3 X.XXX Y N
Float4 X.XXXX Y N
Float5 X.XXXXX Y N
Float6 X.XXXXXX Y N
Integer1 Discrete, Short State, Long State Y N
Integer2 Count Y N
Integer4 Millisecond Time Y N
Time1 HH:MM:SS N N
Time2 M:SS.SSS N N
Time3 HHHH:MM N N
Time4 MM:SS.SSS N N
State Discrete, Short State, Long State, Count N Y
Date Date N N

* Float0 through Float6 are floating point data types and Time1 through Time4 are
millisecond time data types.
** When display format is STATE:
- A Display State Table name must be entered.
- Named State Table must be defined in the State Table (ST) Block.

2-61
MOD 30ML Functions

PROCESS ALARM DISPLAY BLOCK

2.6.4 Typical Block Connections for Process Alarm Display Block


Typical softwiring connections are shown in Figure 2-23.

EXAMPLE 1 Alarm on a Floating Point Process Variable

VCI1
VCIM1 PAD1
R
Result Alarm Input
Logical Source Pointer from another Acknowledge Input
function block A Discrete output to another
Alarm Active
U function block
Unacknowledged Operator indication
TRIPVAL of acknowledgement
Trip Value and trip value
(through CL block)
Report
Operator write access to trip
value, and control reporting

EXAMPLE 2 Alarm on a Discrete Process Input

DI1
DIM1 PAD2
R
Result Alarm Input
A
Alarm Active Discrete Output to Another
Function Block

EXAMPLE 3 Alarm on a State Variable

TM1
Timer Disable PAD3
STATE
State Alarm Input
A
Timer Reset Alarm Active Discrete Output to Another
HLSTAT Function Block
High Limit

Figure 2-24. Process Alarm Display, Typical Block Connections

Acknowledge Input (ACKINP)


The acknowledge input is edge triggered so that a value of 0 (FALSE) followed by a value of
1 (TRUE) acknowledges the alarm. If a discrete variable is connected, it is used to
acknowledge an alarm and reset the input. If no alarm acknowledgement input is connected,
the alarm can still be acknowledged in other ways as described in Process Alarm Operation.

2.6.5 Process Alarm Display Block Events


The event codes (and their suggested text messages) for the process alarm display block are
given below. See the descriptions of data base attribute #02 for additional information. See
the system event block for event transitions.

0 BLOCK STATE SET TO RUN


1 BLOCK STATE SET TO HOLD
2 BLOCK STATE SET TO OFF
3 BLOCK STATE SET TO DEBUG
4 text is user defined

2-62
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

2.7 BUILT-IN ANALOG INPUT BLOCK (AIN)


The built-in analog input block is used to gather signals from the built-in analog input circuit
and then calculate an appropriate electrical input value. The block is also the data repository
for the characteristics and origin of the input values. Connected analog input function blocks
use the input values along with the characteristic data to provide a usable signal to process.
The input function blocks can provide input filtering, action, normalization, linearization, and
scaling.

The AIN block can be configured to accept any one of the following input signal types:
• Volts
• Current
• Millivolts
• Thermocouple
• Thermocouple with Cold Junction Compensation (TC + CJC)
• Resistance
• RTD

A functional bock diagram of an AIN block is shown in Figure 2-24. The display that is used
to configure the block is shown in Figure 2-25.

2.7.1 Built-In Analog Input Block Operation


One AIN block services one input to the built-in circuit and as many other input function
blocks as required can be connected. All input values are buffered in one of five possible
state tables. Process input and output routines use these tables to pass data between the
built-in analog input blocks which get data every 100 milliseconds and the input function
blocks which run at the configured scan group interval. The input function block connected to
the AIN block latches the data according to the parameters found in the input function block’s
configuration.

Built-in analog input blocks can generate diagnostic errors based upon the following possible
conditions:

• Input circuit communications error


• Input circuit status error

During a warm or cold start condition, a pre-run read of the input circuit value is performed to
initialize the field result, conditioning and I/O task buffer values. If no I/O communications
error is encountered these values are forward initialized and their qualities are marked
GOOD, otherwise the previous values are held and their qualities marked BAD. If the block
mode is MANUAL, the pre-run read value is loaded into the field result only; the result
remains at its previous value and its quality is marked GOOD.

2-63
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

VOLTS Range Top


MILLIVOLTS
CURRENT Input Type
TC Range
TC+CJC CJC Mode Bottom
RTD
RESISTANCE
Local CJC Result
Manual
Auto Linearization
FCJC Type
External Burnout
CJCIN Connection Detection
Built-in
Analog Input FR
+ Manual
Lock
Auto Result
Apply Only to GOOD
RTD Input Sum Unlock
Types
- BAD
Leadwire
Resistance Manual
GOOD
Lock RQ
Auto
Quality Check Unlock CJCQ
FRQ
Communications
Error Condition FCJCQ
I/O Lock
(from IF Block) MODE

Input Number

RTD Type
Apply Only to RTD
AIN Error Input Types
Nominal
COMMERRA Resistance
I/O MODERRA
Communica Error Checks Resistance
tions Error COMMERRU Range
MODERRU
Diagnostic ERRCNT
Group

Figure 2-25. Built-In Analog Input/Block (AIN), Functional Block Diagram

2-64
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

Figure 2-26 Built-In Analog Input Block (AIN), Edit Display

2.7.2 Built-in Analog Input Block Parameters


The mnemonics, valid values, and data types for all fields that may be selected for display
and/or be used in making softwiring connections are listed in Table 2-9. A description of
each attribute is provided in the attribute list that follows the table.

Table 2-9. Built-In Analog Input Block Attributes, Valid Values, Mnemonics, and Data Types
Field Name / Attribute Mnemonic Valid Values CWR Data Type Attr
Version VERSION 1 ––R Long State 00
Block Length BLKLEN ––R Count 01
Block State STATE RUN (0) ––R Short State 02
Bad Inputs Accepted BADINP YES (1) ––R Discrete 03
Diagnostics Group SUPPGRP NONE, 1 to 7 CWR Long State 04
I/O communications error COMMERRS ENABLE (0), SUPPRESS (1) CWR Discrete 05
Unacked comm. error COMMERR NO (0), YES (1) – WR Discrete 06
U
Active comm. error COMMERRA NO (0), YES (1) ––R Discrete 07
Input Error INERRS ENABLE (0), SUPPRESS (1) CWR Discrete 08
Unacked Input Error INERRU NO (0), YES (1) – WR Discrete 09
Active Input Error INERRA NO (0), YES (1) ––R Discrete 10
Input Number INNUM 1, 2 C–R Long State 11
Error ERROR – WR Short State 12

2-65
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

Table 2-9. Built-In Analog Input Block Attributes, Valid Values, Mnemonics, and Data Types (Cont’d)
Field Name / Attribute Mnemonic Valid Values CWR Data Type Attr
Input Type INTYPE VOLTS (1), CURRENT (2), C – R Long State 13
MILLIVOLTS(3),
THERMOCOUPLE(4),
TC + CJC (5),
RESISTANCE(6), RTD(7)
Mode MODE MAN (0), AUTO(1) CWR Discrete 14
Initial Result R value CWR Floating Pt 15
Result Quality RQ GOOD (0), BAD (1) – WR Discrete 16
Field Result FR value ––R Floating Pt 17
Field Result Quality FRQ GOOD (0), BAD (1) ––R Discrete 18
Reference Voltage, Low VRLO ––R Floating Pt 20
Zero Counts, Low ZLO ––R Floating Pt 21
Reference Voltage, High VRHI ––R Floating Pt 22
Zero Counts, High ZHI ––R Floating Pt 23
Input resistance INR ––R Floating Pt 24
Resistance Zero RZERO ––R Floating Pt 25
CJC mV Zero C CJV0 ––R Floating Pt 26
Temp Coefficient C CJTC ––R Floating Pt 27
CJC Mode CJCMODE MANUAL(0), AUTO(1), CWR Short State 40
LOCAL(2), EXTERNAL(3)
Init. CJC Result CJC CWR Floating Pt 41
CJC Quality CJCQ GOOD (0), BAD (1) – WR Discrete 42
CJC Field Result FCJC ––R Floating Pt 43
CJC Field Result Quality FCJCQ GOOD (0), BAD (1) ––R Discrete 44
TC/RTD Type TYPE NONE(0), B(1), E(2), J(3), CWR Long State 45
K(4), N(5), R(6), S(7), T(8),
Platinum 0.003850(24),
Platinum 0.003923(25),
Platinum 0.003902(26)
Platinum 0.003911(27)
Nickel 0.006720(28)
Range - Top SIGHI 100% value in input units CWR Floating Pt 46
Range - Bottom SIGLO 0% value in input units CWR Floating Pt 47
Nominal Resistance NOMRES positive value in ohms CWR Floating Pt 48
Leadwire Resist. LWRES value (not less than -4.0) in CWR Floating Pt 49
ohms
Resistance Range RANGE LOW(0), NORMAL(1) C – R Discrete 50
Burnout Detection BURNDIR NONE(0), UPSCALE(1), C – R Short State 51
DOWNSCALE(2)

2-66
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

Table 2-9. Built-In Analog Input Block Attributes, Valid Values, Mnemonics, and Data Types (Cont’d.)
Field Name / Attribute Mnemonic Valid Values CWR Data Type Attr
Input B0 B0 ––R Floating Pt 52
Input B0 Quality B0Q ––R Discrete 53
Input B1 B1 ––R Floating Pt 54
Input B1 Quality B1Q ––R Discrete 55
Input B2 B2 ––R Floating Pt 56
Input B2 Quality B2Q ––R Discrete 57
Input B3 B3 ––R Floating Pt 58
Input B3 Quality B3Q ––R Discrete 59

Block Type
AIN This is the built-in analog input block type.

00 Version (VERSION) ........................................................................................................... – – R


The AIN block is at version 1

01 Block Length (BLKLEN) .................................................................................................... – – R


Number of data base bytes used by this block.

02 Block State (STATE) ......................................................................................................... – – R


Not configurable in this block; state is always equal to RUN. See IB-23G600 (I/O Logic
Book 1) Section 2.4.1, State Changes for additional information. This block, when
configured, is always executed in the RUN state (Normal Operation).

03 Bad Inputs Accepted (BADINP) ....................................................................................... – – R


This attribute is present but not used with this block. The block runs without a check on input
quality. See IB-23G600 (I/O Logic Book 1) Section 2.3.2, Data Quality for additional
information.

04 Diagnostics Group (SUPPGRP)....................................................................................... CWR


The diagnostic errors reported by this block can be grouped for System Event block control of
their reporting.

NONE No group assigned.


1 to 7 Defines the diagnostic group number for the diagnostic suppression group
controlled by the System Event block.

05 I/O communications error (COMMERRS) ....................................................................... CWR


The I/O communications error diagnostic checks the status of communications between the
built-in circuit and this block. Error counters are stored in the Interface block. The diagnostic
can be suppressed or enabled as follows.

SUPPRESS 1 Diagnostic error is suppressed. Acknowledgement status remains


clear.
ENABLE 0 Diagnostic error is not suppressed and errors are reported to the
System Event block.

2-67
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

06 Unacked I/O communications error (COMMERRU) .................................................... – WR


If the I/O communications error diagnostic is enabled, the unacknowledged diagnostic status
indicates if the diagnostic is or is not acknowledged. The status can be acknowledged or
read as follows.
YES 1 Diagnostic error is unacknowledged.
NO 0 Diagnostic error is acknowledged.

07 Active I/O communications error (COMMERRA)........................................................... – – R


If the I/O communications error diagnostic is enabled, the active status indicates if the error is
active even after acknowledgement. The status can be read as follows.
YES 1 Diagnostic error is active.
NO 0 Diagnostic error is not active.

08 Input Error (INERRS) ........................................................................................................ CWR


The analog input error diagnostic is a status indication for the built-in circuit. The diagnostic
can be suppressed or enabled as follows.
SUPPRESS 1 Diagnostic error is suppressed. Acknowledgement status remains
clear.
ENABLE 0 Diagnostic error is not suppressed and errors are reported to the
System Event block.

09 Unacknowledged Input error (INERRU) ......................................................................... – WR


If the analog input error diagnostic is enabled, this unacknowledged status indicates if the
diagnostic is or is not acknowledged. The status can be acknowledged or read as follows.
YES 1 Diagnostic error is unacknowledged.
NO 0 Diagnostic error is acknowledged.

10 Active Input error (INERRA) ............................................................................................ – – R


If the input error diagnostic is enabled, the active status indicates if the error is active even
after acknowledgement. The status can be read as follows.
YES 1 Diagnostic error is active.
NO 0 Diagnostic error is not active.

11 Input Number (INNUM) .....................................................................................................C – R


The analog input number.
1 The analog input is connected to Input 1 of the built-in circuit.
2 The analog input is connected to Input 2 of the built-in circuit.

12 Error (ERROR) .................................................................................................................. – WR


Error code indicating the reason for the last input error detected.
0 No Error
1 Needs Calibration. Analog input requires recalibration.
2 Underrange.
3 Overrange.
4 Error Unknown.

2-68
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

13 Input Type (INTYPE)......................................................................................................... C – R


Configuration of this parameter identifies the type of input to which the AIN block applies.
Input types are as follows:

VOLTS 1 Input range is -10 mV to +6V dc.


CURRENT 2 This selection applies to either 2-wire or non 2-wire inputs.
Input range is 0 to 54 mA.
MILLIVOLTS 3 Input range is -10 mV to +120 mV dc .
THERMOCOUPLE 4 When this input type is selected and cold junction
compensation is required, the compensation must be
obtained from an external source. The input range is -10
mV to +120 mV dc
TC + CJC 5 This selection (thermocouple with cold junction
compensation) provides the following:
• For Input 1, cold junction compensation is available from a
temperature sensor that is part of the built-in input circuit.
• For Input 2, the cold junction compensation value can only be
set by the operator because the Cold Junction Compensation
Mode (Attr #40) must be LOCAL for Input 2.
• The thermocouple input range is -10 mV to +120 mV dc.

NOTE: If input 2 is a thermocouple input requiring cold junction


compensation, an Input Type selection of THERMOCOUPLE is
recommended. With this selection, cold junction compensation can
be obtained externally from the AIN1 block if Input 1 is a
thermocouple, or from another external source such as an RIM block
if Input 1 is not a thermocouple. See Section 2.7.3 for block
connection information.
RESISTANCE 6 Input range is 0 to 430 ohms.
RTD 7 This selection applies to either a 2-wire or 3-wire RTD. Input range
is 0 to 430 ohms

14 Mode (MODE)..................................................................................................................... CWR


The mode of the block is determined by configuring and/or writing this attribute. Switching
mode is a reportable event.
MAN 0 The block result can be user written and the result quality is marked
good. The block input is the previous result or the last written result.
AUTO 1 The block input is processed using current data from the built-in
circuit.

2-69
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

15 Initial Result (R) ................................................................................................................ CWR


The initial result is the value used when the block is initially downloaded. It is entered in the
units specified by the input type selected during configuration (ohms for an RTD input). This
value is overwritten when the block first executes. Subsequent values are the result of block
evaluation. This is the actual field result floating point value to the instrument when the block
is in auto. This is a writeable floating-point data value when the block is in manual, the I/O is
locked, or the instrument state is not run. Result values are written and read in the units of
the configured input type.

16 Result Quality (RQ)........................................................................................................... – WR


This data quality field will go BAD if any of the block diagnostic errors become active while
the block is in auto. Writeable only when the block is in MANUAL, the I/O is locked or the
instrument state is not run.

17 Field result (FR) ................................................................................................................ – – R


This is the input value calculated from the raw voltages read from the built-in circuit. See
Attribute #52 and Table 2-9.

18 Field Result Quality (FRQ) ............................................................................................... – – R


The field result data quality will go bad if any of the block diagnostic errors become active.

20 Reference Voltage Low (VRLO)....................................................................................... – – R


The reference voltage value from the input circuit in millivolts. Corresponds to B2-B0 counts.

21 Zero counts, low (ZLO)..................................................................................................... – – R


The zero value from the input circuit in counts. Corresponds to B3 - B0 at 0.

22 Reference voltage, high (VRHI)....................................................................................... – – R


The reference voltage value from the input circuit in volts. Corresponds to B2-B0 counts.

23 Zero counts, high (ZHI) .................................................................................................... – – R


Zero reading from the input circuit in counts. Corresponds to B3 - B0 at 0.

24 Input resistance (INR) ...................................................................................................... – – R


Measured value of the current input resistance.

25 Resistance zero (RZERO) ............................................................................................... – – R


The RTD value at 0 resistance.

26 CJC mV at Zero °C (CJV0) ............................................................................................... – – R


The cold junction compensation value in millivolts at 0 °C.

27 Temperature Coefficient (CJTC) .................................................................................... – – R


The temperature coefficient of the cold junction compensator in °C/mV.

2-70
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

40 CJC Mode (CJCMODE) ..................................................................................................... CWR


The mode of the cold junction compensation function is determined by configuring and/or
writing this attribute. Switching the CJC mode between auto and manual is a reportable
event. The available modes are as follows:
MANUAL 0 The cold junction compensation value can be set by the operator.
The manual mode causes CJC Result Quality to be good. The CJC
value is read from the built in circuit but is not used to update the
CJC Result.
AUTO 1 The cold junction compensation input from the sensor in the built-in
circuit is calculated and stored in the FCJC result and CJC result
fields where it is available for correction of the thermocouple input
value.
LOCAL 2 The cold junction compensation value can only be changed by the
operator. A compensation value is not read from the built-in circuit.
EXTERNAL 3 The cold junction compensation value is obtained from an external
source.
The applicability and switching functionality of the CJC Mode attribute is restricted as follows:
• The EXTERNAL mode applies only when the Input Type is THERMOCOUPLE. The
external mode is invoked by bringing a CJC signal into the AIN block from an external
source via a softwiring connection; it does not appear as a selection choice on the AIN
block edit display.
• The AUTO, MANUAL, and LOCAL modes apply only to Input 1 when the Input Type is
TC+CJC.
• The LOCAL mode is the only mode allowed for Input 2 when the Input Type is TC+CJC.
• Switching between the LOCAL mode and the AUTO or MANUAL modes by writing to the
CJC Mode attribute is not allowed.

41 Initial CJC Result (CJC) .................................................................................................... CWR


This attribute applies only when the input type is TC +CJC and CJC mode is not external.
The initial result is the value used when the block is initially downloaded. This value is
overwritten when the block first executes. Subsequent values are the result of block
evaluation. The CJC value is in degrees Celsius. However, when connected to a TI block,
the input will automatically be converted to the appropriate units. The value is writeable only
when the block is in manual, I/O is locked, or the instrument state is not run.

42 CJC Result Quality (CJCQ) ..............................................................................................– WR


This quality check is applicable only when the Input Type is TC + CJC and the CJC mode is
not LOCAL or EXTERNAL. This data quality field will go BAD if any of the block diagnostic
errors become active while the block is in auto. Writeable only when the block is in manual,
the I/O is locked or the instrument state is not run.

2-71
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

43 CJC Field Result (FCJC) .................................................................................................. – – R


This value applies only when the input type is TC +CJC and the CJC mode is not local or
external. The result of reading the cold junction compensation value from the built-in circuit.

44 CJC Field Result Quality (FCJCQ) .................................................................................. – – R


This quality check is applicable only when the Input Type is TC + CJC and the CJC mode is
not LOCAL or EXTERNAL. This data quality field will go BAD if any of the block diagnostic
errors become active.

45 TC or RTD Type (TYPE).................................................................................................... CWR


This is the type of thermocouple or RTD input connected to the built-in input circuit. The
source of the input can be an actual thermocouple or RTD, or a temperature transmitter
providing a voltage or current signal. The linearization specified here is performed in the TTI
or TI function blocks.
NONE 0 Set at none when input (volts, millivolts or current,) is not
from a temperature transmitter.
B 1 Input linearization is for a B type thermocouple.
E 2 Input linearization is for an E type thermocouple.
J 3 Input linearization is for a J type thermocouple.
K 4 Input linearization is for a K type thermocouple.
N 5 Input linearization is for an N type thermocouple.
R 6 Input linearization is for an R type thermocouple.
S 7 Input linearization is for an S type thermocouple.
T 8 Input linearization is for a T type thermocouple.
Platinum,0.003850 24 Input linearization is for an RTD
Platinum,0.003923 25 Input linearization is for an RTD
Platinum,0.003902 26 Input linearization is for an RTD
Platinum,0.003911 27 Input linearization is for an RTD
Nickel,0.006720 28 Input linearization is for an RTD

46 Range - Top (SIGHI).......................................................................................................... CWR


Applies only when the configured input type is volts, millivolts, current or resistance. The top
of the signal range represents the 100% output value in units specified by the input type.

47 Range - Bottom (SIGLO) .................................................................................................. CWR


Applies only when the configured input type is volts, millivolts, current or resistance. The
bottom of the signal range represents the 0% output value in units specified by the input type.

48 Nominal Resistance (NOMRES) ...................................................................................... CWR


The nominal resistance in ohms at 0°C for the RTD input type.

49 Leadwire Resistance (LWRES) ....................................................................................... CWR


Leadwire resistance in ohms for the RESISTANCE and 2-wire RTD input types (enter 0 when
using 3-wire.

2-72
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

50 Resistance Range (RANGE)............................................................................................ C – R


Applies only to RTD and RESISTANCE input types.
LOW 0 0 to 55 ohms
NORMAL 1 0 to 430 ohms

51 Burnout Detection (BURNDIR)........................................................................................ C – R


Applies only to THERMOCOUPLE or TC+CJC input types, and MILLIVOLT input types when
these signals represent a thermocouple input.
NONE 0 No burnout detection
UPSCALE 1 Signal moves upscale if burnout is detected
DOWNSCALE 2 Signal moves downscale if burnout is detected

52,54... 58 B0 Input (B0) through B3 Input (B3)................................................................................ – – R


Raw voltage input values in counts as read from the input circuit. These values are used in
the calculation of the field Result as shown in Table 2-10.

53,55... 59 B0 Input Quality (B0Q) through B3 Input Quality (B3Q), ............................................. – – R


The quality of an input is set BAD under the following conditions:
• Value is not read due to a communications error.
• Status value read deems the input as BAD.
• Input was never read; not used

Table 2-10. Equations for Calculation of Field Result Values Using Inputs B0, B1, B2 and B3
Input Type Field Result (FR) Equals Units
VOLTAGE VRHI*(B3-B0-ZHI)/(B2-B0-ZHI) VOLTS
CURRENT (VRHI*(B1-B0-ZHI))/(RIN*(B2-B0-ZHI)) AMPS
MILLIVOLT VRLO*(B3-B0-ZLO)/(B2-B0-ZLO) mVOLTS
TC (VRLO*(B3-B0-ZLO)/(B2-B0-ZLO))*1000 uVOLTS
TC (VRLO*(B3-B0-ZLO)/(B2-B0-ZLO))*1000 uVOLTS
+CJC CJTC*((VRLO*(B1-B0-ZLO)/(B2-B0-ZLO))-CJV0) degrees C
RTD (RIN*(B2-(2*B3)+B1)/(B1-B0-ZLO))-RZE OHMS
RES (RIN*(B2-(2*B3)+B1)/(B1-B0-ZLO))-RZE OHMS

2-73
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

2.7.3 Typical Block Connections for Built-In Analog Input Block


Typical softwiring block connections are shown in Figure 2-27.

B u ilt- in A na lo g In pu t # 1 , In pu t Ty p e =Vo lts

A IN 1
21
Fi e ld R e su l t ( F R) VC I
18
MO DO U T M O D IN
R
R e su l t
S o ftw ir in g co n n e c tio n
to a n o th e r b l o ck.

B u ilt- in A na lo g In pu t # 1 , In pu t Ty p e = TC +C J C , Bu ilt- In CJ C us ed fo r o th e r TC In pu ts

A IN 1
21
F ie ld R e su l t (F R ) TI
18
M OD OU T M O D IN
R
C JC Re s ul t
S o ftw i ri ng c o n n e ctio n
* Co n v e rsi o n fro m C e ls iu s to o th e r to a n o th e r b lo c k.
u n its p e rfo rm ed at CJC INP o f T I bl oc k.

A IN 2 TI
46
F ie ld R e su l t (F R) CJ C INP
43
M O DO U T M O D IN
R
R e su l t
S oftw ir in g c o nn e ctio n
to a n o th e r b lo ck .
T IM TI
40 S o ftwi ri n g co n n e cti on
F ie ld R e su l t (F R) C JC IN P
39 to a no the r b lo c k.
M OD OU T M O DIN
R
Re s u lt

B u ilt - in An a log In pu t # 2 , In pu t Ty pe = Th e rm o c ou ple , E x t e rn a l CJ C c on n ec te d th rou gh R IM

A IN 2
46
Fi e ld R e su lt ( FR ) TI
43
M OD OU T M O DIN
R
RIM R e su l t
C JC IN S o ftwi ri n g co n n e cti o n
M OD OU T
to a n o th er b lo c k.

Figure 2-27. Typical Block Connections for Built-In Analog Input Block

2-74
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

2.7.4 Built-In Analog Input Block Events


The event codes (and their suggested text messages) for the built-in analog input block are
given below. See the descriptions of referenced data base attributes (in brackets) for
additional information. See the system event block for a description of event transitions.

4 I/O COMMUNICATIONS ERROR (Attribute No. 05)


5 INPUT ERROR (Attribute No. 08)
6 MODE SET TO AUTO (Attribute No. 14)
7 MODE SET TO MANUAL (Attribute No. 14)
8 CJC MODE SET TO AUTO (Attribute No. 40)
9 CJC MODE SET TO MANUAL (Attribute No. 40)

2-75
MOD 30ML Functions

BUILT-IN ANALOG INPUT BLOCK

2-76
MOD 30ML Data Base Reference

BUILT-IN ANALOG OUTPUT BLOCK

2.8 BUILT-IN ANALOG OUTPUT BLOCK (AOUT)


The built-in analog output block serves as the data handling block for the built-in
current output circuit. This block is used to output an analog value to the current
output circuit. The output circuit converts the value to a milliampere field signal.
This block determines output scaling, tracking and failure conditions.

Available to the user as block outputs are the result, scaled result, track status, and
the data quality for each of these attributes. Also available is the active and
unacknowledged status of the block diagnostic errors. A functional block diagram
of a built-in analog output block is shown in Figure 2-27a (part 1) and Figure 2-27b
(part 2). The Built-In Analog Output Block edit display, which is used to configure
the block, is shown in Figures 2-28 and 2-29.

PART 1

Bad TRACK
Lock OR Track
Status

Manual

I/O Lock
(from IF Block) Mode

FP Value
GOOD
Input Unlock
LSP
Auto See PART
BAD Normal 2
Lock
Manual
GOOD Initialize
LSP Data Quality

Auto
RQ
Bad Inputs
Accepted Manual
Quality Check TRKQ
(YES/NO) GOOD
Auto
Bad
Initialize
AND Sheet 1 of 2
TRUE

Figure 2-28a. Analog Output Module Block, Functional Block Diagram (Part1)

2-77
MOD 30ML Data Base Reference

BUILT-IN ANALOG OUTPUT BLOCK

PART 2

Input Input Output Output


Range Range Range Range
Bottom Top Bottom Top

Scaled
Result Normaliza Action
tion (DIR/REV) Scaling
See PART 1
0.00 HOLD
Result
PREVIOUS

Output to use
on Failsafe
Restart
Preset Value
PRESET
Failsafe Normal

Output to
use on

Built-in Analog
ERROR Output

COMMERRA Built-in Circuit Status


Error Check
AOMERRA

Output Number
COMMERRU
AOMERRU

Diagnostic I/O Comm. AOUT Sheet 2 of 2


Group Error Error

Figure 2-28b. Analog Output Module Block, Functional Block Diagram (Part2)

2-78
MOD 30ML Data Base Reference

BUILT-IN ANALOG OUTPUT BLOCK

Figure 2-29a. Built-In Analog Output Block (AOUT), Edit Display

Figure 2-29b. Built-In Analog Output Block (AOUT), Edit Display

2-79
MOD 30ML Data Base Reference

BUILT-IN ANALOG OUTPUT BLOCK

2.8.1 Built-In Analog Output Block Operation


The Built-In Analog Output block is a data repository for the instrument. One block
services one analog output from the built-in circuit. All values are buffered in one of
five possible task state tables. Process output routines use these tables to pass
data between the built-in analog output blocks, which are updated every 50
milliseconds, and the process algorithm blocks which run at the configured scan
group interval.

The input connected to the AOUT block is scaled and latched according to the
configuration of the block parameters. All valid data is then sent to the output
circuit during each 50 millisecond scan cycle.

Built-in analog output blocks can generate diagnostic errors based upon the
following possible conditions:
• I/O communications error
• Output circuit status error (used to determine when to get output circuit error
code)

2-80
MOD 30ML Data Base Reference

BUILT-IN ANALOG OUTPUT BLOCK

2.8.2 Built-In Analog Output Block Parameters


The mnemonics, valid values, and data types for all fields that may be selected for
display and/or be used in making softwiring connections are listed in Table 2-11. A
description of each attribute is provided in the attribute list that follows the table.

Table 2-11. Built-In Analog Output Block Attributes, Valid Values, Mnemonics, and Data Types
Field Name / Attribute Mnemonic Valid Values CWR Data Type Attr
Version VERSION ––R Long State 00
Block Length BLKLEN ––R Count 01
State STATE RUN (0) ––R Short State 02
Bad Inputs BADINP Rejected (0), Accepted (1) CWR Discrete 03
Diagnostic Group SUPPGRP NONE, 1 to 7 CWR Long State 04
I/O communications error COMMERRS ENABLE (0), SUPPRESS (1) CWR Discrete 05
Unacked I/O comm. error COMMERR NO (0), YES (1) – WR Discrete 06
U
Active I/O comm. error COMMERRA NO (0), YES (1) ––R Discrete 07
OUTPUT Error OUTERRS ENABLE (0), SUPPRESS (1) CWR Discrete 08
Unacked Output error OUTERRU NO (0), YES (1) – WR Discrete 09
Active Output error OUTERRA NO (0), YES (1) ––R Discrete 10
Output Number OUTNUM 1, 2 C–R Long State 11
Output Circuit Error ERROR – WR Short State 12
Mode MODE MANUAL (0), AUTO (1) CWR Discrete 13
Action ACTION REVERSE (0), DIRECT (1) CWR Discrete 14
Input Range, Top INHI Floating Pt Value, E.U. CWR Floating Pt 15
Input Range, Bottom INLO Floating Pt Value, E.U. CWR Floating Pt 16
Output Range, Top OUTHI Floating Pt Value, Sig. Rng. CWR Floating Pt 17
Output Range, Bottom OUTLO Floating Pt Value, Sig. Rng. CWR Floating Pt 18
Output to use on restart RESTART PREVIOUS (0), PRESET (1) CWR Discrete 19
Output to use on failsafe FSACT HOLD (0), PRESET (1) CWR Discrete 20
Restart preset value PRESET Floating Pt Value, E.U. CWR Floating Pt 21
Track status TRKSTAT NO TRACK (0), TRACK (1) – WR Discrete 22
Track status data quality TRKQ GOOD (0), BAD (1) – WR Discrete 23
Initial Scaled Result RSC Floating Pt Value, E.U. CWR Floating Pt 24
Maximum Output MAXOUT Floating Pt Value, E.U. ––R Floating Pt 26
Input INPUT LSP or Floating Pt Value, E.U. CWR Floating Pt 40
Result R Floating Pt Value, Sig. Rng. CWR Floating Pt 50
Result Quality RQ GOOD (0), BAD (1) – WR Discrete 51

2-81
MOD 30ML Data Base Reference

BUILT-IN ANALOG OUTPUT BLOCK

Block Type
AOUT This is the Analog Output Module Block type.

00 Version (VERSION)........................................................................................................... – – R
The AOUT block is at version 1

01 Block Length (BLKLEN).................................................................................................... – – R


Number of data base bytes used by this block.

02 State (STATE).................................................................................................................... – – R
Not configurable in this block; state is always equal to RUN. See IB-23G600 (I/O Logic Book
1) Section 2.4.1, State Changes for additional information. This block, when configured, is
always executed in the RUN state (Normal Operation).

03 Bad Inputs (BADINP) ........................................................................................................ CWR


See IB-23G600 (I/O Logic Book 1) Section 2.4.1, State Changes for additional information.
Accepted 1 Block runs its algorithm without a check on input quality and output
quality is set to good.
Rejected 0 Block checks data quality on its inputs and only runs its algorithm if
its input is good (no action is taken on a bad value). The block result
is held at the previous value and the result quality is set bad and the
track status is set to TRACK.

04 Diagnostic Group (SUPPGRP) ........................................................................................ CWR


The diagnostic errors reported by this block can be grouped for System Event block control of
their reporting.
NONE No group assigned.
1 to 7 Defines the diagnostic group number for the diagnostic suppression group
controlled by the System Event block.

05 I/O Communications Error (COMMERRS)...................................................................... CWR


The I/O communications error diagnostic checks the status of communications between the
built-in circuit and this block. The diagnostic can be suppressed or enabled as follows.
SUPPRESS Diagnostic error is suppressed. Acknowledgement status remains clear.
ENABLE Diagnostic error is not suppressed and errors are reported to the System
Event block.

06 Unacked I/O Communications Error (COMMERRU) ..................................................... – WR


If the I/O communications error diagnostic is enabled, the unacknowledged diagnostic status
indicates if the diagnostic is or is not acknowledged. The status can be acknowledged or
read as follows.
YES 1 Diagnostic error is unacknowledged.
NO 0 Diagnostic error is acknowledged.

2-82
MOD 30ML Data Base Reference

BUILT-IN ANALOG OUTPUT BLOCK

07 Active I/O communications Error (COMMERRA) ........................................................... – – R


If the I/O communications error diagnostic is enabled, this active diagnostic status
indicates if the error is active even after acknowledgement. The status can be read
as follows.
YES 1 Diagnostic error is active.
NO 0 Diagnostic error is not active.

08 OUTPUT Error (OUTERRS) .............................................................................................. CWR


The analog output error diagnostic is a status indication for the output circuit error
code (see attribute #12). The diagnostic can be suppressed or enabled as follows.
SUPPRESS 1 Diagnostic error is suppressed. Acknowledgement status remains
clear.
ENABLE 0 Diagnostic error is not suppressed and errors are reported to the
System Event block.

09 Unacked Output Error (OUTERRU) .................................................................................– WR


If the analog output diagnostic error is enabled, this unacknowledged status
indicates if the diagnostic is or is not acknowledged. The status can be
acknowledged or read as follows.
YES 1 Diagnostic error is unacknowledged.
NO 0 Diagnostic error is acknowledged.

10 Active Output Error (OUTERRA) ..................................................................................... – – R


If the analog output diagnostic error is enabled, the active status indicates if the
error is active even after acknowledgement. The status can be read as follows.
YES 1 Diagnostic error is active.
NO 0 Diagnostic error is not active.

11 Output Number (OUTNUM) .............................................................................................. CWR


The analog output number.
1 The analog output is connected to Output 1 of the built-in circuit.
2 The analog output is connected to Output 2 of the built-in circuit.

12 Output Circuit Error (ERROR) .........................................................................................– WR


This error code indicates the reason for report of an Output Error diagnostic
(attribute #08).
0 No error
1 Output too low
2 Output too high

2-83
MOD 30ML Data Base Reference

BUILT-IN ANALOG OUTPUT BLOCK

13 Mode (MODE) .................................................................................................................... CWR


The mode of the block is determined by configuring and/or writing this attribute.
Switching mode is a reportable event.
MAN 0 The block output is the result value, which may be written by the
user.
AUTO 1 The block output is processed using the input data.

14 Action (ACTION) ............................................................................................................... CWR


The action applied to the normalized result before it is scaled and put into the
result for this block is determined by configuring and/or writing this attribute.
DIRECT 1 The analog output for the block is not reversed. The direct
calculation is: normalized result = normalized result.
REVERSE 0 The analog output for the block is reversed. The reverse calculation
is: normalized result = 1 – normalized result.

15 Input Range, Top (INHI).................................................................................................... CWR


High floating point engineering units value for input normalization. The default is
100.0. The input range top must match the actual input engineering units high
value. The normalization calculation is: (RSC – INLO) / (INHI – INLO). The
normalized result must always be a value between 0 and 1.

16 Input Range, Bottom (INLO) ............................................................................................ CWR


Low floating point engineering units value for input normalization. The default is
0.0. The input range bottom must match the actual input engineering units low
value.

17 Output Range, Top (OUTHI) ............................................................................................ CWR


High floating point milliamp value for output corresponding to the top of the input
range. The default is 20.0.

18 Output Range, Bottom (OUTLO) ..................................................................................... CWR


The low floating point milliamp value for output corresponding to the bottom of the
input range. The default is 4.0.

19 Output to use on restart (RESTART) .............................................................................. CWR


After a power-up, download of a configuration, or exit from service manual, the
scaled result is set depending upon the selection made here.
PREVIOUS 0 The scaled result existing in the database is used.
PRESET 1 A configured value for the scaled result is used. (see Restart Preset
Value).

20 Output to use on failsafe (FSACT) .................................................................................. CWR


A failsafe condition results from a communications failure. A write to the failsafe
action attribute causes the failsafe configuration to be downloaded to the module.
HOLD 0 Failsafe output value is last result value.
SET 1 Failsafe output value is set to 0.00.

2-84
MOD 30ML Data Base Reference

BUILT-IN ANALOG OUTPUT BLOCK

21 Restart preset value (PRESET)........................................................................................ CWR


A floating point value, in engineering units, used as the restart output when preset
is selected.

22 Track status (TRKSTAT) ...................................................................................................– WR


Track status is set to track whenever the path from the input to the result is broken.
This occurs when the data quality is bad, or the I/O lock is locked, or when the
mode is manual.
NO TRACK 0 Data quality is good, I/O lock is unlocked and mode is auto.
TRACK 1 Data quality is bad, I/O lock is locked or mode is manual.

23 Track status data quality (TRKQ) ....................................................................................– WR


This data quality field is not changed by any internal logic and will always be
GOOD unless written otherwise.

24 Initial Scaled result (RSC) ................................................................................................ CWR


The initial scaled result is the input value in engineering units used when the block
is initially downloaded. This value is overwritten when the block first executes.
During execution this value is normalized, and action is applied; it is then
converted to a signal range and written to the result. The scaled result is writeable
only in manual, when the I/O is locked, or when the instrument state is not run.

26 Maximum Output (MAXOUT)............................................................................................ – – R


The maximum milliampere output (nominally 54 mA) that can be obtained from the
built-in circuit.

40 Input (INPUT) ..................................................................................................................... CWR


The block input is a floating-point value that can be obtained from either a local or
remote source.
Local An input value in engineering units can be configured and is
displayed in the Local field. The local input can be written when the
block is in auto.
Remote Connection of a floating point LSP to the block input overrides any
existing local input and provides the remote input type. The Remote
field shows the connection path data. The input value cannot be
written when the source is remote; the value is readable.

50 Result (R) ........................................................................................................................... – – R


This is the actual instrument output in milliamps.

51 Result Quality (RQ) ...........................................................................................................– WR


The result quality is set BAD when the input status is bad and bad inputs are not
accepted, or if the restart value cannot be read after a warm start. Any write to the
result causes the result quality to be set GOOD. The result quality is writeable in
manual, when the I/O is locked, or the instrument state is not run.

2-85
MOD 30ML Data Base Reference

BUILT-IN ANALOG OUTPUT BLOCK

2.8.3 Typical Block Connections for Built-In Analog Output Block


Typical softwiring block connections are shown in Figure 2-30.

AOUT1
R 17
LN1 Result
INPUT 16
Result Input
MODE Operator indication of
Mode
input value, output value,
RSC and mode.
Scaled Result

Operator write access to set


mode and scaled result.

Figure 2-30. Built-In Analog Output, Typical Block Connections

2.8.4 Built-In Analog Output Block Events


The event codes (and their suggested text messages) for the built-in analog input
block are given below. See the descriptions of referenced data base attributes (in
brackets) for additional information. See the system event block for a description of
event transitions.

4 BLOCK MODE SET TO AUTO (Attribute No. 14)


5 BLOCK MODE SET TO MANUAL (Attribute No. 14)
6 I/O COMMUNICATIONS ERROR (Attribute No. 05)
7 OUTPUT ERROR (Attribute No. 08)

2-86
MOD 30ML Functions

CONFIGURATION EXAMPLES

SECTION 3
CONFIGURATION EXAMPLES

3.1 GENERAL
This section has tutorials for configuring a complete PID loop application. This section is
divided in to two parts:
1. Configuration Examples using the ViZapp or Visual Application Builder Software
2. Configuration Examples using the DOS based Application Builder Software

3.2 GETTING STARTED USING THE VIZAPP SOFTWARE

 This section explains how to configure a PID loop by using the ML_PID compound from
the Gallery. Refer to the ViZapp Help file and the ViZapp training manual IB-VIZAPP-TUT
and the Display Guide IB-1800R-SCR for more examples and reference.

1. Launch ViZapp. Select Programs from the Windows Start menu. Select ViZapp from the
menu. The ViZapp configurator will launch as shown in the next figure. As you will notice, the
configurator will be blank with no workspace loaded on the screen.

Figure 3. 1. ViZapp Configurator

Note that the configurator screen has two frames (left and right).

3-1
MOD 30ML Functions

CONFIGURATION EXAMPLES

2. We will create a new Workspace and a new project in this step. Click on the File menu
on the menu bar at the top. Select New from the drop-down menu as shown in the next
figure:

Figure 3. 2. File-New
• This will open the New dialog box as shown in the next figure. There are 2 tabs (sections) in
this dialog box and it displays the Project tab as default.

Figure 3. 3. New Project


• Click on the little button next to the Location field to open the Browser for Folder dialog as
shown in the next figure:
• Select the C: drive from this folder and select on it by double-clicking on it. See next figure:

3-2
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3.4. New Project


• The New dialog box will redisplay

Figure 3. 5. New Project


• Type the name CLASS for your project in the name field. Notice that the name of the location
for this project changes to C:\Class. It creates a folder under the C: drive (or any other drive
you choose) automatically.

 All project files and the instrument and display documents will be saved in this folder. This
makes project portability easier.

3-3
MOD 30ML Functions

CONFIGURATION EXAMPLES

• Click on the option Create a new Workspace. This will create a new workspace for us. Click
on OK.
• The configurator will redisplay with a new workspace and a project as shown below:

Figure 3. 6. Class Workspace

• The left frame shows the project tree. The Workspace is at the root of this tree and contains
the Project, and other components such as Event Log and Components.
• The newly created workspace is given the same name as that of the project. The project sub-
tree or branch contains the components Security and Tags.
3. With what we have above, we have only created an environment to configure instrument
database and display files. Next we will create an instrument database. We will hereafter call
it the instrument document.

• Click on the New Document button on the tool bar or Select File-New form the menu bar to
display the New dialog box again as shown below:

3-4
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 7. New Document

• The New dialog box shows the Document tab now. Select the type MOD Function Block
diagram by clicking on it and then type the name PIDLAB for the document in the Name field.
• This document will be created in the project folder \class automatically and will be added to
your Class project by default. See figure above.

 When you create a new project, a file with the project name and file extension .APRJ will
be created. This file is called project file in the ViZapp installation directory. The
instrument document/ configuration files (MOD Function block diagram files) will have
extension .AFBD and will be saved in the project folder. The workspace we created will
be saved as a file with extension .AWSP (Class.awsp) and a file with same name and
.FEQP extension (Class.feqp) in the root folder where the project folder is located.

 IF you move your workspace and project to a different location/ drive, move the project
folder and the two files for the workspace (.AWSP and .FEQP), maintaining their relative
location.

• Click on OK. This will display the Choose Instrument Version dialog box as shown in the
next figure: This dialog box will display the different instrument ID module versions
(MODCELL and MOD 30ML).

3-5
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 8. Instrument Versions


• Select MOD 30ML 2 from this list as our instrument version by clicking on it and then click on
the Close button.
• The Configurator will redisplay as shown below. The instrument database will be opened on
the right frame and the default blocks (IF, SE, ST and DIF) for the MOD 30ML database will
be loaded.
• Notice that the newly created document PIDLAB is shown in the project tree attached to the
Project Class.

Figure 3. 9. Default instrument database

3-6
MOD 30ML Functions

CONFIGURATION EXAMPLES

• The algorithm blocks belonging to the instrument version selected will be shown as a menu
on the left frame.
4. Let us first configure a scan group:

 There could be as many as five scan groups in an instrument database. The control loops
(database blocks connected together) are grouped into Loop Compounds. The Loop
Compounds can be assigned to any of these scan groups. All the blocks and compounds
in a particular scan group will be executed at the same scan rate configured for the group.

 This way you can have many loops in the database and they can be executed at different
rates depending on their priority and speed of the process they are controlling.

• Notice that all the four blocks on the screen are selected. Deselect them by clicking on a
blank space and then double-click on the IF (Interface) block. The Interface block will open as
shown in the next figure: The block is displayed in a visual notebook format, with tabbed
“pages” containing the parameters for configuration. The Execution tab (page) of this block
will be displayed by default.

Figure 3. 10. IF Block


• Change the Group 1 scan interval from 250 ms to 200 ms by typing in the ms field of Scan
Intervals:Group 1.
Configuration parameters related by common nature are grouped into tabs. This helps to
display of information in a logical manner. Most fields under these tabs contain default values
that need not be changed.

3-7
MOD 30ML Functions

CONFIGURATION EXAMPLES

5. Add a loop compound. We will configure our control loop inside this loop compound.

• Select the Loop Cpd (Loop compound) block from the Algorithms window add it to the
document. Do this by first locating the block in the menu by selecting the All submenu at the
bottom and then by dragging the scroll bar on the right up/down. See the next figure:

Figure 3. 11. Algorithms menu


• Drag the Loop Cpd block (Loop Compound) from the Algorithms menu on the left frame to
the right frame. Click on the Loop Cpd block with your left mouse button and then drag it to
the instrument document. Click on the mouse button to place the Loop compound block with
the other existing blocks (IF, SE, DIF and ST) on the right frame.
6. Configure a name and description for the Loop Compound: Click once on this block with
your right mouse button. A menu as shown in the next figure will appear.

Figure 3. 12. Loop Compound Properties

3-8
MOD 30ML Functions

CONFIGURATION EXAMPLES

• Select Properties from the menu. The Algorithm Properties of the Loop Cpd block will be
displayed next as shown in the next figure.
• Type Control in the Name field.
• Type a description "This compound is for the Flow Control Loop"
• Click on OK to close the Properties.

Figure 3. 13. Loop Compound Properties


7. Open the loop compound:

• Right-Click on the Control compound (Loop compound you just named) again and select
Open compound at the bottom of this menu.
• The loop compound will open as shown below and will have a Loop block (LP) by default.

Figure 3. 14. Loop Block

3-9
MOD 30ML Functions

CONFIGURATION EXAMPLES

 A loop compound is a compound or group that contains a loop block. You configure other
blocks and compounds inside the loop compound. The compound can be added to one of
the five scan groups defined in the Interface block. All the blocks inside the compound will
be executed at that scan rate.

• The compound will also have a Compound Signals menu that can be used to make pre-
defined connections in and out of this block. (We will not use this for now. You can close it by
clicking on the close button on its right hand side top – the X button)
8. Open the Loop block (LP-1) by double-clicking on it. The block will open as shown in the
next figure. We will not change anything in this block. Just notice that scan group this
compound belongs to defaults to Scan Group 1. (200 ms– refer to step 4 - Interface block).

Figure 3. 15. Loop Block

Close the Loop block by clicking on the OK button.

9. Add the ML_PID compound from the Component Gallery:

• From the top menu bar, select Project/Gallery/Component Gallery

3-10
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 16. Accessing the Component Gallery


• When the Component Gallery dialog box appears, select the Compounds tab. A library of
pre-configured Compounds, or groups of algorithm blocks, appears.

Figure 3. 17. Compound Library

3-11
MOD 30ML Functions

CONFIGURATION EXAMPLES

• Move the cursor to the ML_PID compound and either double-click, or select it and then select
the Export button. The Component Gallery dialog box closes and the ML_PID compound is
placed in your workspace. The compound is highlighted with small green boxes.

Figure 3. 18. Loaded compound


• With the compound selected, select Objects – Uncompound from the menu bar. This will
break and open the compound. You will see a set of function blocks as shown in the next
figure.
• Click elsewhere on the screen to deselect the function blocks.
• The loaded blocks include a AIN (built-in analog input), VCI (Signal Conditioning for
voltage/current input), PID, AOUT (built-in current output), DISP (display), a TL (tuning list
block (TL) and two PAD (process alarm display) blocks.
• Click on OK to close the block.

3-12
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 19. Loaded ML_PID Compound


10. We will make the following changes to the loaded compound:

• Change the signal’s engineering range to 0-200.


• Change the display tag name to FIC-100 and the Engineering units to GPM
• Change the High alarm trip value to 150 and the low alarm trip value to 50 respectively.
The procedure is as given below:

• Select the VCI block and double-click on it to open the block. Type the high engineering units
and the high quality limits to 200. Select the Linearization type and change it to Square Root.
See the next figure for details:

3-13
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 20. VCI Block Properties

• Open the PID block by double-clicking on it.

• The General tab will be displayed as shown in the next figure.

• Change the process variable range to 200 in the PID block.

3-14
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 21.PID Block Properties

• The PID block has the most extensive configuration. Select the Setpoint tab in the PID bloc
configuration and change the Setpoint Limits – High to 200 also to match the process
variable range.

• We wont be making any other changes to the PID block in this tutorial.

• Click on the OK block to accept the changes made tot his block.

• The compound has a display block configured to show the proves variable, setpoint, output,
output mode and setpoint mode from the PID block. This display block is configured with the
process variable and setpoint range as 0-100. We need to change this to 0-200 to match the
changes we did in the VCI and the PID blocks.

• Open this Display block (DISP) by double-clicking on it. Click on the Formats tab of the
display block configuration.

3-15
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 22. PID Block Properties – Setpoint tab

• The Formats tab contains formatting information for the inputs of the display block. Double-
click on the processL format from this tab. The Specify Format Data will be displayed as
shown in the figure below. Change the High limit to 200 as shown.

3-16
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 23. Display block Properties – Formats tab

• Click on OK to accept the changes.

• We also need to change the display format for the setpoint. Double-click on the setptL format
and change its High limits to 200 as explained above.

• Both the setpoint and the process share the same bar format. It is the processB format from
this list. Double-click on it to open the format data.

3-17
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 24. Display block Properties – Formats tab

• Change the High limit to 200 to match the process variable range. Click on OK.

• The display block Formats tab will now reflect the changes we made as shown in the next
figure.

3-18
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 25. Display block Properties – Formats tab

• Click on OK on the display block configuration to accept the changes.

• The compound also has 2 PAD blocks with names Hi Process Alarm and Lo Process Alarm.
We will change the alarm trip values on these PAD blocks.

• Double-click on the Hi Process Alarm block to open it. Refer to the next figure.

3-19
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 26. PAD block Properties


• Change the Trip value to 150 and then click on OK to accept the changes.
• The alarm label for this alarm is PROCESS HIGH. Optionally you can change the Alarm
Label for this alarm from the Display tab of the PAD block.
• Click on OK to accept the changes.
• Open the PAD block Lo Process Alarm by double-clicking on it. Refer to the next figure.
• Change the Trip value to 50.
• The alarm label for this alarm is PROCESS LOW. Optionally you can change the Alarm
Label for this alarm from the Display tab of the PAD block.

3-20
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 27. PAD block Properties

• Click on OK to accept the changes.

• Next we will change the display tag name in the display block. Open the display block by
double-clicking on it.

• Change the Display Tag to FIC-100 as shown in the next figure:

3-21
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 28. Display block Properties

• Click on OK to accept the changes.

• Click on a empty are of the workspace to deselect any selected blocks. Close the loop
compound by right-clicking and then selecting Close Compound from the resulting menu.
Refer to the next figure.

3-22
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 29. Close loop compound

• Add the Display Tag to the Display Interface Block: The next step is to add the display tag of
the display block we configured in the previous steps to the display list in the display
interface block. During runtime, you can scroll through the displays in this list by pressing
the Tag button on the instrument.

Figure 3. 30. DIF block Properties

3-23
MOD 30ML Functions

CONFIGURATION EXAMPLES

• Open the DIF (Display Interface) block as shown in the figure above.

• Click on the New button on this block as shown in figure above: A text edit box will appear
in the area below and you will see a text edit cursor blinking.

• Type the name of your display tag (FIC-100). Click on the OK to accept he changes.

11. It is important that you save the database. Select File – Save All from the menu bar.

12. Compile the database by selecting Instrument-Compile from the menu bar.

Figure 3. 31. Instrument Compile


• The Compile Setup dialog box as shown below will appear. Click on OK (Do not reassign
block occurrence numbers).

Figure 3. 32. Compile Setup


• The Interface File Options dialog box will be displayed as shown next. Click on OK. For more
information about Interface File options, refer to the ViZapp Training Manual IB-VIZAPP-TUT.
• Click on OK. If the database has errors, it will not be compiled successfully. A list of errors
will be displayed on the screen in a sub-window along with other information such as the
number of errors, warnings and info messages as shown below:

3-24
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 33. Information Window


• You can double-click on an error to open the block that has a configuration problem. If the
database has no errors, there is a message saying that the Compile was completed without
error.
• Also look for messages on database size and current consumption of the instrument.
• You can close this info sub-window by right-clicking on the window and then clicking on the
resulting Hide Window button or by selecting View-Information from the menu bar at the
top.

 Refer to the VIZAPP Training manual (IB-VIZAPP-TUT) for information and labs on
configuring OPC Server for communicating with the controller and downloading a
compiled database. For more configuration examples and labs, refer to the Vizapp
Training Manual and also the Display Script Guide IB-1800R-SCR.

3-25
MOD 30ML Functions

CONFIGURATION EXAMPLES

3.3 CONFIGURATION EXAMPLES USING THE APPLICATION BUILDER


SOFTWARE
The configurations described in this section support the concepts of using the Display (DISP),
Display Interface (DIF), State Table (ST), Tune List (TL) and Process Alarm Display (PAD)
functions used specifically used by the MOD 30ML instrument. These configuration concepts
are presented using a single PID loop with alarms and then adding a totalizer and using a
cascade PID loop and adding a CJC compound as examples. Other compounds are shipped
with the Application Builder but are not described here.

3.3.1 GETTING STARTED WITH THTE APPLICATION BUILDER SOFTWARE


Based on the assumption that the Application Builder software is installed as described in the
IB-23H141 User’s Guide, a new strategy is initiated as follows:

1. Access the DOS Prompt for the drive and directory where the Application Builder resides.
The following prompt appears:

C:\APPBLD

If the drive and directory are other than C and APPBLD, the applicable prompt appears
instead of C:\APPBLD.

2. Type STRATEGY and press the ENTER key. The UNTITLED [ROOT] display appears in the
Select mode with the workspace empty.

3. From the tool bar select the Library icon. The System Library menu appears.

4. Select the MOD 30ML type of instrument (both MODCELL and MOD 30ML may be
available). The instrument library appears on the left side of the display.

5. Select an instrument from the left and place it in the work space. A block representing the
selected instrument appears. The block is identified with a default tag (i. e., 001).

6. Select and query the block to access the block identification window, then Select the Block
Tag field and type the name you wish to assign to the block.

7. Select the Enter button to close the window. The instrument block with your assigned tag
name appears in the workspace.

8. Double click on the instrument block. The block is removed from the work space and the
environment blocks appear; (IF, SE, DIF, and ST). This is the Instrument Level of your
strategy, Figure 3-34A.

3-26
MOD 30ML Functions

CONFIGURATION EXAMPLES

Loading a Loop Into A Strategy

9. From the library icons on the left side of the workspace, select LP CPD (loop compound) and
place it in the workspace, Figure 3-34B.

10. Assign a tag name to the loop compound, then double click on the loop symbol. A loop block
and connection block appear in the workspace. This is the Loop Level of your strategy.

11. Load the required preconfigured compounds at the loop level as described below in the
Loading a Compound Into A Strategy steps and in the following referenced sections:
• PID Controller with Display Block Compound (Section 3.3.2)
• Totalizer with Display Block Compound (Section 3.3.5)
• Cascade with Display Block Compound (Section 3.3.9)
• Cold Junction Compensation Compound (Section 3.3.12)

Loading a Compound Into A Strategy

12. Access the loop level of the strategy requiring the compound. A loop block and connection
block appear in the workspace, Figure 3-34C. Any other previously configured loop level
blocks also appear.

13. From the tool bar, select the Compound icon using the right mouse key. A compound
submenu appears.

14. Select the load icon from the submenu. A Load Compound menu appears.

15. Double click on the COMPOUND directory to obtain the list of available compounds, then
click on a specific compound and select OK.

16. Select NO at occurrence number selection window so that block occurrence numbers in the
compound are not retained. Following this selection, the window closes and the compound
appears in the workspace, Figure 3-34D.

The only reason to select YES to retain existing block occurrence numbers is in the case
where the compound has been saved form an existing strategy and is being reloaded into the
same strategy.

17. Select and query the compound to obtain the identification window, then select the tag field
and enter the name you wish to assign.

18. Select the enter button to close the identification window. The compound appears in the
workspace with the assigned tag name.

The compound is now loaded into your strategy and any parameters can be configured to
meet the specific requirements of the strategy.

3-27
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 34. Workspace Displays Appearing During Configuration

3-28
MOD 30ML Functions

CONFIGURATION EXAMPLES

3.3.2 BASICPID (PID WITH DISPLAY) COMPOUND


The BASICPID compound is a fully functional single PID loop for the MOD 30ML controller
that includes the blocks and connections shown in Figure 3-2. The compound can be added
to an existing strategy which was saved previously or it can be used in a new strategy which
has been initiated as described in Section 3.3.

Features of the BASICPID compound are as follows:


• Built-in input and output connections are made to a single block representing the single loop
PID compound.
• MOD 30ML display connections, display script, control and alarm tune list and state table
(external file equivalent is STATE.TXT) are preconfigured.
• Additional features, such as more Process Alarm Display blocks, can easily be added.

3.3.3 PID Display Configuration Overview


The BASICPID compound consists of a PID block, a Display block, a Tune List block for
control and alarm parameters, and process connections that use built-in analog input and
outputs. This compound provides a basic working model of a PID loop. All ranges are set for
0 to 100 and a current type input and output is used.

Figure 3. 35. PID with Display Compound Blocks

3-29
MOD 30ML Functions

CONFIGURATION EXAMPLES

3.3.4 PID Display Configuration Procedure


The starting point of this procedure is the loop level of your strategy. The BASICPID
compound can be added to an existing strategy which was saved previously or it can be used
in a new strategy which has been initiated as described in Section 3.3.

To use the PID&DSP compound, set the TAG name in the DISP block (default is TAG-100)
and insert this name in the Tag List of the DIF block (up one level). The required state table
definitions are included in the block and also exist in the file “STATE.TXT”. If this block is
loaded in a new strategy, it will compile as is.

Display Interface Block Configuration Example

"TAG-100"; /* Example Loop 1 Display Tag */

Tune List Configuration Example


A tune list block is included in the BASICPID compound. This control tune list includes the
seven parameters identified below.

Control Tune List


Input Name Attribute State Table Limits Entry
1 PID TYPE CATYPE PidTypT None
2 ACTION ACTION PidActT Required
3 GAIN BGAIN 0.01 to 125 Required
4 RESET BRESET 0 to 125 RPM Required
5 PREACT BPREACT 0 to 32 MIN Required
6 SP LOLIM SPLL 0 to 100 Required
7 SP HILIM SPHL 0 to 100 Required

3-30
MOD 30ML Functions

CONFIGURATION EXAMPLES

State Table Configuration Example


The following is a listing of the state table definitions as included in the default state table
block and found in the external file STATE.TXT. This file is sufficient for the basic PID
compound.

/* Sample State Tables */ /* Control Algorithm Type (PID.CATYPE)


/* Output Mode Status (PID.OPMS) */ */
opmsD, 3, "???" PidTypT, 4, "????"
{ {
0, "MAN"; 2, "EOOO";
1, "AUT"; 4, "OSOO";
3, "TRK"; 5, "PSOO";
5, "FLT"; 6, "ESOO";
} 8, "OMOO";
/* Output Mode Restart Value (PID.OPMRV)*/ 9, "PMOO";
opmrvT, 8, "????????" 10, "EMOO";
{ 18, "EOPO";
0, "MAN"; 21, "PSPO";
1, "AUT"; 22, "ESPO";
4, "PREVIOUS"; 25, "PMPO";
} 26, "EMPO";
/* Setpoint Mode Status (PID.SPMS) */ 34, "EOEO";
spmsD, 3, "???" 38, "ESEO";
{ 42, "EMEO";
0, "LOC"; 66, "EOOE";
1, "REM"; 82, "EOPE";
3, "TRK"; 98, "EOEE";
5, "FLT"; }
} /* Control Action (PID.ACTION) */
/* Setpoint Mode Restart Value (PID.SPMRV) PidActT, 8, "????????"
*/ {
spmrvT, 8, "????????" 0, " REVERSE";
{ 1, " DIRECT";
0, "LOC"; }
1, "REM"; /* Input Filter Type (PID.FILTYPE) */
4, "PREVIOUS"; PidFlTyT, 8, "????????"
} {
/* Suppress Calculation Error 0, "NONE";
(PAD.SUPPRESS) */ 1, "PRE AUTO";
EnaSuppT, 8, "????????" 2, "PRE USER";
{ 3, "PRO USER";
0, " ENABLE"; }
1, "SUPPRESS"; /* Feedforward Calculation Type
} (PID.FFCTYPE) */
/* Tune Request Type */ PidFfTyT, 8, "????????"
TuneReqT, 8, "????????" {
{ 0, " NONE";
0, "TUNE ???"; 1, " ADD";
1, " CONTROL"; 2, " MULT";
2, " ALARM"; }
} /* Data Quality */
QualityT, 3, "???"
{
0, " OK";
1, "BAD";
}

3-31
MOD 30ML Functions

CONFIGURATION EXAMPLES

Display Block Configuration for Single PID Example


The following is a listing of the display script used to execute the PID display. The scroll key
moves you through the output, setpoint and tune request displays. The R/L key is not used.
The auto key changes the output mode status to auto. The manual key changes the output
mode status to manual and the line 6 display to the output source. The state variable
TUNE_REQ, when active, allows selection of the control or alarm tune list.

/*Single PID with Display template


User is prompted to select one of the tune lists SCROLL_PRESSED:
through the use of a state variable.*/ {
IF SCRLCNT >= 3 THEN
DEFAULTS: SCRLCNT = 0;
{ ELSE SCRLCNT = SCRLCNT + 1;
MANUAL_PRESSED: CASE SCRLCNT OF
{ {
IF OPMS != 3 THEN 0:
{ #LINE5 = " OP";
OPMS = 0; #LINE6.SRC = OP;
#LINE5 = " OP"; BREAK;
#LINE6.SRC = OP; 1:
} #LINE5 = " SP";
} #LINE6.SRC = SP;
BREAK;
AUTO_PRESSED: }
{ }
IF OPMS != 3 THEN SCROLL_HELD:
OPMS = 1; {
} TUNE;
}
}

3-32
MOD 30ML Functions

CONFIGURATION EXAMPLES

3.3.5 TOTALIZER COMPOUNDS


Many flow applications require simultaneous control and totalization of the process. In the
past a separate device was commonly used for totalization while flow control was left to a
PID controller. If there was to be any interaction or relationship between the two devices it
was often difficult if not impossible to implement. MOD 30ML can provide accurate PID
control and totalization for multiple loops. MOD 30ML’s versatile display permits a variety of
display options whereby the totalizer, totalizer commands and PID can be combined on the
same display tag or may be split to multiple display tags.

These compounds provide a way to implement a totalizer block and various display options
for totalizer commands of reset, stop, hold and run. Refer to Logic Book 2 (IB-23G602
Section 8.10) for functional information on the totalizer block.

3.3.6 Configuration Overview


If your Application Builder is version 5 or newer the Compounds directory will offer two
PID/totalizer display compounds (PIDTOT1.CSM and PIDTOT2.CSM). Both compounds
include a single loop PID and totalizer function and are applicable to MOD 30ML firmware
Version 2.0 and above. If you don’t find these compounds, the instructions in IB-MLAPP-
TOT, Totalization Application Guide, will help you build the PID, totalizer and display(s) from
scratch.

PIDTOT1.CSM uses one display tag for the PID, totalized value and totalizer command
functions. This functionality is probably the most common display used for a PID and totalizer
application. PIDTOT2.CSM places the PID and totalized value on one tag display and the
totalizer command functions on a second display tag.

3.3.7 PIDTOT1.CSM - Totalizer and PID


This compound, Figure 3-4, includes the totalizer display and its command functions on the
same display tag as the PID display. This is handy because the operator does not have to
leave the PID display to see the totalized value or to use the totalizer commands.

To use this compound:


1. Enter your loop tag name in the display (DISP) and DIF blocks.
2. Set the to “User” and enter the Display Tag name in the
field. This causes the instrument to come up after a power loss with your new display.
3. Enter the totalizer block and set the proper rate, threshold, etc. values.
4. Set the input and PID block fields to meet with your particular application.
5. Enter a scan group rate in the IF block.
6. Add the data found in the State Table Description block to the State Table Block by
adding the two state tables found below.
7. Place the proper communications block.
8. Compile and download the strategy.

3-33
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 36. Totalizer 1 Compound


Totalizer Block Connections

PID.PVI -------> Totalizer.ANALINsP (input for totalizing)

Totalizer.CMD ----------> DISP.I10 (permits display access to the run, hold,


stop and reset commands of the totalizer)

Totalizer.TC ----------> DISP.I4 (totalized value to be displayed)

State Table Data

ACTIOND, 8, “????????”
{
0, “EXIT”;
}
ACTIONE, 8, “????????”
{
5, “EXIT”;
1, “RESET”;
2, “STOP”;
3, “RUN”;
4, “HOLD”;
}

3-34
MOD 30ML Functions

CONFIGURATION EXAMPLES

Display Operation
Unless other changes were made in the strategy to cause a different behavior, the instrument
will come up in a manual mode with a local set-point. The output is displayed on the bottom
line. Pressing the scroll key once causes the set-point to be displayed on the bottom line.
Pressing the scroll key a second time causes the totalized value to be displayed on the
bottom line and an up arrow to be illuminated.

To enter the totalizer commands menu, press the up key while the totalized value is being
displayed on the bottom line. The action of “RESET” will appear on the bottom line and “ENT”
will flash next to the scroll key. Pressing the enter key (scroll key) causes the reset operation
to be enacted and transfers the operator to the totalizer display. If the enter key is not
pressed the action will time out, reset will not be enacted, and the operator will be prompted
to exit the totalizer commands menu.

This same operation applies to the STOP, RUN and HOLD commands. Each of these
commands are accessed after entering the totalizer commands menu and pressing the up
key for each command.

Pressing the enter key when “EXIT” is displayed on the bottom line causes the totalizer
commands menu to close returning the operator to the totalized value display.

3-35
MOD 30ML Functions

CONFIGURATION EXAMPLES

3.3.8 PIDTOT2.CSM- Totalizer and PID with Separate Commands Menu


This compound includes the totalized value as part of the PID display. However, the totalizer
commands menu is assigned to a separate display tag.

To use this compound:


1. Enter your loop tag name in the display (PIDDISP and TOTDISP) blocks and in the tag
list of DIF block.
2. Set the to “User” and enter the Display Tag name in the
field. This causes the instrument to come up after a power loss with your new display.
3. Enter the totalizer block and set the proper rate, threshold, etc. values.
4. Set the input and PID block fields to meet with your particular application.
5. Enter a scan group rate in the IF block.
6. Add the data found in the State Table Description block to the State Table Block by
adding the state table found below.
7. Place the proper communications block.
8. Compile and download the strategy.

Figure 3. 37. Totalizer 2 Compound

3-36
MOD 30ML Functions

CONFIGURATION EXAMPLES

Totalizer Block Connections

PID.PVI -------> Totalizer.ANALINP (input for totalizing)

Totalizer.TC ----------> PIDDISP.I10 (permits display access to the run, hold,


stop and reset commands of the totalizer)

Totalizer.CMD ----------> TOTDISP.I4 (totalized value to be displayed)

Totalizer.TC ----------> TOTDISP.I1

State Table Data

ACTIOND, 8, "????????"
{
0, "NONE";
1, "RESET";
2, "STOP";
3, "RUN";
4, "HOLD";
}

Display Operation
Unless other changes were made in the strategy to cause a different behavior, the instrument
will come up in a manual mode with a local set-point. The output is displayed on the bottom
line. Pressing the scroll key once causes the set-point to be displayed on the bottom line.
Pressing the scroll key a second time causes the totalized value to be displayed on the
bottom line.
To enter the totalizer commands menu, press the TAG key at any time. This causes the
display to switch to the totalizer commands display. The totalized value will be on the second
line. The word “CMD” will appear next to the scroll key and the up and down arrows will be
illuminated. The lower display will state “NONE”. Pressing the up key causes “RESET” to
appear on the bottom line and “ENT” will flash next to the scroll key. Pressing the enter key
(scroll key) causes the reset operation to be enacted. If the enter key is not pressed the
action will time out, reset will not be enacted, and “NONE” will re-appear on the bottom line of
the totalizer commands menu.
This same operation applies to the STOP, RUN and HOLD commands. Each of these
commands are accessed after entering the totalizer commands display and pressing the up
key for each command.
Pressing the TAG key at any time causes the PID display to return.

3-37
MOD 30ML Functions

CONFIGURATION EXAMPLES

3.3.9 CAS&DSP (CASCADE WITH DISPLAY) COMPOUND


The CAS&DSP compound is a fully functional cascade control and display configuration for
the MOD 30ML Multiloop Controller. This compound provides for cascade control of a
multiloop system where the primary variable is controlled by adjusting the set-point of a PID
algorithm which is controlling a related secondary variable. The secondary variable then
affects the primary variable through the process. In this compound the PID algorithm
receiving the primary process variable is called the master, and the PID algorithm receiving
the secondary process variable is called the slave. All auto/manual switching for the system
is done in the slave control loop.

Operation of the cascade arrangement provided by this compound is as follows:


• The slave set-point tracks (automatically remains equal to) the slave process variable while in
manual. This feature eliminates the need for the slave PID algorithm to respond immediately
to any deviation which exists when the mode is changed from manual to cascade. Without
set-point tracking the algorithm responds to any deviation which exists by ramping the slave
output at the reset rate established when the slave loop was tuned.
• The output of the master PID algorithm tracks the set-point of the slave while the slave is in
manual. This ensures that the local (slave) set-point and remote set-point (master output)
are in balance prior to placing the slave loop in cascade (automatic) mode.
• The set-point of the master tracks the master process variable while the slave is in manual.
This causes the set-point of the master to vary indirectly in response to manual output
changes in the slave loop. When the system is switched to cascade, the master set-point
switches from track to local, and there is no process upset because the track function
eliminates any set/process deviation in the master loop.
• Since the control element (valve, air damper, etc.) is directly manipulated by the slave, the
cascade master is configured to permit only the automatic mode which simplifies operations
by ensuring that all mode transfers and manual intervention can be accomplished exclusively
at the slave.

3.3.10 Configuration Overview


The blocks which make up the CAS&DSP compound are shown in Figure 3-38. This
compound consists of an input stage, a control stage, an output stage, and a display stage.
The input stage contains analog input blocks and input function blocks which process the
master and slave process variable inputs. The control stage contains two PID algorithms
which provide the cascade control function. The output stage contains a single analog output
block which outputs an analog control signal to the built-in current output circuit. The display
stage contains display and tune list blocks which determine how the system inputs, outputs,
status indications, and tunable parameters are displayed on the front panel.

Each block in the compound has been preconfigured and all required connections between
the blocks have been made. Each block can be queried to view its edit display, and block
attributes can be edited to meet specific application requirements. The master and slave
process inputs are configured as current signals connected to the built-in universal analog
input circuits. The configuration can be modified to use any process input signal which can
be accepted by the MOD 30ML instrument

3-38
MOD 30ML Functions

CONFIGURATION EXAMPLES

Figure 3. 38. Cascade with Display Compound Blocks

3.3.11 Configuration Procedure


The starting point of this procedure is the loop level of your strategy. The cascade compound
can be added to an existing strategy which was saved previously or it can be used in a new
strategy which has been initiated as described in Section 3.3.

Configuring Cascade Parameters


The parameter values for the cascade system are determined by configuration of the
attributes of the blocks within the cascade compound. These attributes appear on the edit
displays associated with each block, and each attribute has an assigned default value. The
default values for attributes of the PID, display, and tune list blocks establish the basic
functionality of the cascade system and should not be changed without full understanding of
the significance of each default entry. PID parameters such as gain, reset, etc. can be
adjusted using the tuning displays which are accessible on the front panel. The input stage
of the compound can be reconfigured as required to accept the process input applicable to
your application.

Make required configuration changes as follows:

1. Double click on the CAS&DSP compound symbol. The blocks which make up the compound
appear in the workspace, Figure 3-38.

3-39
MOD 30ML Functions

CONFIGURATION EXAMPLES

2. Double click on the master process input block to access its edit display, then proceed as
follows:

a. Check the Input Type entry and if necessary change the default entry (CURRENT) to
match your process input.

b. Review the default values for the other attributes of the block and change values as
required for your process input

c. Click on the Enter button to input configured values and return to the workspace display.

3. If the Input Type was changed to Thermocouple, TC+CJC, or RTD the input function block
must be replaced. Proceed as follows:

a. Select the block and click on the delete icon to delete the block and its connections.

b. Click on the library icon to access the loop library menu, then select Input/Output. The
Input/Output function icons appear on the left side of the workspace.

c. Select the input function you require and place it in the workspace at the location where
the VCIM block was deleted.

d. Select the visible connection icon and connect the following:


R of the input function block to PVI of the master PID block and
MODOUT of the module block to MODIN of the input function block.

e. Access the block edit display and edit the attributes as required for your input.

4. Repeat Steps 2 and 3 for the Slave process input.

5. Make connections to the cascade compound as described in the next section.

Connecting Inputs and Outputs


The cascade compound is fully functional as loaded. If it is the only compound in your
strategy, the only connections required are the I/O wiring connections to the instrument
terminal block.

Connections to other blocks or compounds in your strategy can be made as required. For
example, if the slave process input is flow, the signal could be totalized by loading a totalizer
compound into your strategy and connecting the result from the slave input function block to
the process variable input of the totalizer compound.

3-40
MOD 30ML Functions

CONFIGURATION EXAMPLES

Configuring DIF, State, and Display Blocks


To complete the configuration of the compound, the following activities must take place.

1. Edit the Display Interface block (DIF) by adding the MASTER and SLAVE display blocks to
the display list.

"MASTER"; /* MASTER Display Tag */


"SLAVE"; /* SLAVE Display Tag */

2. Edit the standard State block by adding the following states.

spmsM, 3, "???" /* PID.SPMS (Master setpoint mode status). */


{
0, "LOC";
3, "TRK";
}
spmsS, 3, "???" /* PID.SPMS (Slave setpoint mode status). */
{
1, "REM";
3, "TRK";
}
cmsSD, 3, "???" /* PID.CMS (Slave Control mode status). */
{
0, "MAN";
1, "AUT";
2, "CAS";
3, "TRK";
5, "FLT";
15, "N/A";
}
cmsST, 3, "???" /* PID.CMS (Slave Control mode status). */
{
0, "MAN";
2, "CAS";
}
MSTL, 8, "????????" /* Tuning request. */
{
0, "TUNE ???";
1, " M_TL";
2, " S_TL";
}
TRK, 3, "???" /* Track Status */
{
0, "AUT";
1, "TRK";
}

3. Compile and check the database for tune list block occurrence numbers. Match the cascade
compound TL numbers in the cross reference file (select Report icon and read CRF file) and
use these numbers for the Master and Slave display block local data. The local data for
M_TL assumes it is TL1 (1) and S_TL assumes it is TL2 (2) when it might need to be set for
TL3 (3) and TL4 (4).

4. Recompile and download to the instrument.

3-41
MOD 30ML Functions

CONFIGURATION EXAMPLES

3.3.12 COLD JUNCTION COMPENSATION (CJC) COMPOUND


This compound provides a cold junction compensated thermocouple signal which can be
used as the process variable input in a PID temperature control loop and for display and
recording purposes. An optional feature of this compound permits display of the measured
cold junction temperature at the instrument terminal block. The CJC compound can be
incorporated in strategies configured for either MOD 30ML or MODCELL instruments. Use of
the CJC compound requires that the instrument be equipped with the following hardware:
• 2013A Thermocouple Input Module:
This module accepts the millivolt field input signal from the thermocouple at the process
measurement point. One module is required for each thermocouple input.
• 2009AZ10240A RTD Input module with 2-Wire CJC Sensor:
This module accepts the temperature compensation signal from the RTD sensor connected
to the cold junction at the instrument terminal block. A single RTD module and sensor
provide compensation for all installed thermocouple input modules.

3.3.13 Configuration Overview


The CJC compound has two options: Option 1 provides only the compensated thermocouple
input. Option 2 provides the same compensated thermocouple input, and also makes the
temperature at the cold junction on the instrument terminal block available for display. Both
options are included when the compound is loaded into a strategy, Figure 3-39. The option
to which connections are made becomes the active option.

Figure 3. 39. Cold Junction Compensation Compound Blocks

3-42
MOD 30ML Functions

CONFIGURATION EXAMPLES

The CJC compound resides in the utilities section of the Application Builder software. It is
accessed via the compound icon in the application builder tool bar, and can be loaded into a
strategy at either the instrument level or the loop level. When loaded, the CJC compound
appears in the workspace as a state compound. Input and output connections to the CJC
function can be made either at the instrument level or at the loop level The cold junction
compensation signal within the compound can be connected to a series of thermocouple
input module blocks so that only one CJC compound is required to compensate all
thermocouple input modules in an instrument.

The blocks which make up the CJC compound are shown in Figure 3-6. Each block has
been preconfigured and all required connections between the blocks have been made. Each
block can be queried to view its edit display. CJC parameters such as thermocouple type,
temperature scale, I/O module location etc., can be configured on the edit displays.

3.3.14 Configuration Procedure


The starting point of this procedure is the level (instrument level or loop level) where the CJC
compound appears in your strategy. The CJC compound can be added to an existing
strategy which was saved previously or it can be used in a new strategy which has been
initiated as described in Section 3.3.

Configuring CJC Parameters


The parameter values for the CJC function are determined by configuration of the attributes
of the blocks within the CJC compound. These attributes appear on the edit displays
associated with each block, and each attribute has an assigned default value. In general the
default values are satisfactory for most applications. Those attributes relating to the
instrument hardware configuration and specific process values (i. e., module location,
thermocouple type, temperature scale etc.) may require adjustment. The default values can
be edited as follows:

1. Double click on the CJC compound to open it and see the blocks which make up the
compound.
2. Choose the option to be used in your strategy:
• Option 1: Temperature at the instrument terminals is not available for display.
• Option 2: Temperature at the instrument terminals is available for display.
3. For the option chosen, edit the attributes of each block as follows:
a. Double click on a block to access its edit display.
b. Review the default values for each attribute and change values if required.
Attributes most likely to require changes are:
• Module Location ( TIM1 or TIM2 Block)
Enter the slot number for the TIM (Thermocouple Input Module).
• Module Location (RIM1 or RIM2 Block)
Enter the slot number for the RIM (RTD Input Module)
• Thermocouple Type (TIM1 or TIM2 block)
Scroll entry to obtain required thermocouple type.
• Temperature Scale (TI1 or TI2 block)
Scroll entry to obtain required temperature scale.

3-43
MOD 30ML Functions

CONFIGURATION EXAMPLES

c. Upon completion of required changes for each block, click on the Enter button to
input configured values and return to the workspace display.
4. Make connections to the CJC compound as described in the next section.

Connecting Inputs and Outputs


The required inputs to the CJC compound are:
• Thermocouple signal from the process and
• RTD signal from the cold junction temperature sensor.

These inputs are obtained from the hardware connections at the instrument terminal block.
Make CJC input and output connections as follows:

1. Access the workspace display where you wish to make the connections.

2. From the tool bar, select either the visible connection or wireless connection icon.

3. If the instrument has more than one thermocouple input module, connect the cold junction
compensation signal to the other thermocouple inputs as follows:
a. If Option 1 has been chosen, connect MODOUT of RIM1 to CJCIN of each additional
thermocouple input module block.
b. If Option 2 has been chosen, connect MODOUT of TI2 to CJCINP of each additional TI
block.

4. Connect CJC compound outputs to other blocks in the strategy as required. Be sure to make
the connections to the option you chose in the previous section. The attributes of each block
in the compound are available as outputs. Typical output connections are as follows:
• Result (R) of the TI1 or TI2 block is connected to the process variable (PV) input of a PID
block for temperature control.
• Result (R) of the RTI2 block is connected to a display block in a MOD 30ML instrument, or to
an MSC or ICN block in a MODCELL instrument.

5. After completion of all connections, it is recommended that the database be compiled to


check the validity of the CJC configuration.

3-44
MOD 30ML Functions

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

APPENDIX A
ASSIGNMENT STATEMENT REFERENCE

A.1 ASSIGNMENT STATEMENTS


The assignment statement assigns a value to a given target. The target of an assignment can
be an input name, a local attribute name, or one of several predefined names listed below. All
assignment statements have an expression as their right hand side. The target will be
assigned the value of that expression. Results of assignment statements depend upon the
data type as listed below for the different assignment types. See Display Block for usage
rules and an explanation of resources.

• Table A-1. Assignment Statement Results of Type ‘srcname1 = srcname2'


For example, I1 = I2 or I1 = 4576, or RESULT = INPUT * RATIO + BIAS
(where input, ratio and bias are unique names for display block inputs or
local attribute names).
• Table A-2. Assignment Statements of Type 'display_resource = source_name'
For example, #RBAR = OUTPUT (where #RBAR is a display resource and
output is the unique name of a display block input or local attribute name).
• Table A-3. Assignment Statements of Type 'display_resource = constant’
For example, #LINE1 = 37.94 (where #LINE1 is a display resource).
• Table A-4. Assignment Statements of Type 'display_resource.SRC = srcname'
For example, #RBAR.SRC = OUTPUT; (where #RBAR.SRC is a display
resource having the suffix .SRC and output is the unique name of a display
block input or local attribute name).

Table A-1. Assignment Statement Results of Type ‘srcname1 = srcname2'


Destination Type Source Type Result
Discrete Discrete: = input
Short State: True if input non-zero
Long State: True if input non-zero
Count: True if input non-zero
Msec Time: True if input non-zero
Floating Point True if input non-zero
Date: True if input non-zero
Hex: True if input non-zero
Short State Discrete: = input
Short State: = input
Long State: limits at 15
Count: limits at 15
Msec Time: treats input as 4 byte integer, limits at 15
Floating Point drops fractional part, limits at 15
Date: treats input as 3 byte integer, limits at 15
Hex: treats input as n byte integer, limits at 15

A-1
MOD 30ML Functions

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

Table A-1. Assignment Statement Results of Type ‘srcname1 = srcname2' (Cont’d)


Destination Type Source Type Result
Long State Discrete: = input
Short State: = input
Long State: = input
Count: limits at 255
Msec Time: treats input as 4 byte integer, limits at 255
Floating Point drops fractional part, limits at 255
Date: treats input as 3 byte integer, limits at 255
Hex: treats input as n byte integer, limits at 255
Count Discrete: = input
Short State: = input
Long State: = input
Count: = input
Msec Time: treats input as 4 byte integer, limits at 65535
Floating Point drops fractional part, limits at 65535
Date: treats input as 3 byte integer, limits at 65535
Hex: treats input as n byte integer, limits at 65535
Msec Time Discrete: = input
Short State: = input
Treats output as Long State: = input
4 byte integer Count: = input
Msec Time: = input
Floating Point drops fractional part, limits at $FFFFFFFF
Date: = input, treats input as 3 byte integer
Hex: treats input as n byte integer, limits at $FFFFFFFF
Floating Point Discrete: = input
Short State: = input
Long State: = input
Count: = input
Msec Time: treats input as 4 byte integer (lost resolution in large numbers)
Floating Point = input
Date: = input, treats input as 3 byte integer
Hex: treats input as n byte integer (lost resolution in large numbers)
Date Discrete: = input
Short State: = input
Treats output as Long State: = input
3 byte integer Count: = input
Accepts any input Msec Time: treats input as 4 byte integer, limits at $FFFFFF
if output is local, Floating Point drops fractional part, limits at $FFFFFF
but only valid dates Date: = input
if output is remote. Hex: treats input as n byte integer, limits at $FFFFFF
Ascii Discrete: 0 or 1 as ascii
Short State: 0 - 15 as ascii
Output truncated Long State: 0 - 255 as ascii
to fit available Count: 0 - 65535 as ascii
field size Msec Time: 0 - 4294967295 as ascii
Floating Point value to as many decimal places fit in output field
Date: ascii date format.Accepts any input, so can look strange.
Ascii: = input
Hex: hex value as ascii

A-2
MOD 30ML Functions

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

Table A-1. Assignment Statement Results of Type ‘srcname1 = srcname2' (Cont’d)


Hex Discrete: = input
Short State: = input
Output limits at Long State: = input
available field Count: = input
size (all FF's) Msec Time: = input, treats input as 4 byte integer
Floating Point drops fractional part, input limits at $FFFFFFFF
Date: = input, treats input as 3 byte integer
Hex: = input

A-3
MOD 30ML Functions

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

Table A-2. Assignment statements of type 'display_resource = source_name' (ex. #LINE1 = I1)
Resource Format Displayed Result
#LINE1 Discrete: Integer1 0, 1
#LINE2 State Note 1
#LINE3 Short_State: Integer1 0 - 15
State Note 1
Long_State: Integer1 0 - 255
State Note 1
Count: Integer2 0 - 65535
State Note 1
Msec_time: Integer4 0 - 99999999 (0 - 99999999), first 8 digits (100000000 and up)
Time1 hh:mm:ss (00:00:00.000 to 99:59:59.999), hhhh:mm (100:00:00.000
and up)
Time2 m:ss.sss (0:00.000 to 9:59.999), mm:ss.ss (10:00.000 to
99:59.999),
hh:mm:ss (00:00:00.000 to 99:59:59.999), hhhh:mm (100:00:00.000
and up)
Time3 hhhh:mm
Time4 mm:ss.ss (10:00.000 to 99:59.999), hh:mm:ss (00:00:00.000 to
99:59:59.999),
hhhh:mm (100:00:00.000 and up)
Floating_point Floatn 0.0 - 99999999 (0.0 - 99999999.0), first 8 digits (100000000.0 and
up)
Date: Date mm/dd/yy or dd/mm/yy
Asc: Ascii truncated to 8 characters.
Hex: Hex leftmost characters discarded if more than 8.
#LINE3 Discrete: Integer1 0, 1
#LINE4 State Note 1
#LINE5 Short_state: Integer1 0 - 15
State Note 1
Long_state: Integer1 0 - 255
State Note 1
Count: Integer2 0 - 999 (0 - 999), First 3 digits (1000 - 65535)
State Note 1
Msec_time: Integer4 0 - 999 (0 - 999), first 3 digits alternate (1000 and up)
Time1 :ss (even if > 0:00:99.999)
Time2 sss (even if > 0:00:00.999)
Time3 :mm (even if > 0:99:59.999)
Time4 .ss (even if > 0:00:00.999)
Floating_point 0.0 - 999 (0.0 - 999.0), first 3 digits (1000.0 and up)
Date: /yy (right justified)
Asc: truncated to 3 characters
Hex: leftmost characters discarded if more than 3.

Note 1 If the source value is found in the state table, the associated mnemonic is displayed. Otherwise the
default mnemonic is displayed. All mnemonics in a state table have the same configured width. If not
entered full width, they are padded with trailing spaces during compile. If the mnemonic field is wider
than the display it is truncated to fit. Otherwise it (the entire field) is right justified.

A-4
MOD 30ML Functions

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

Table A-2. Assignment statements of type 'display_resource = source_name' (ex. #LINE1 = I1)
Resource Format Displayed Result
#LBAR Discrete: None off, segment 1 on
#MBAR Bar 0 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
#RBAR Dev
Short_state: None 0 - 15 segments on
Bar 0 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
Dev
Long_state: None 0 - 50 segments on (0 - 50), 50 segments on (51 - 255)
Bar 0 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
Dev
Count: None 0 - 50 segments on (0 - 50), 50 segments on (51 - 65535)
Bar 0 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
Dev
Msec_time: None 0 - 50 segments on (00:00:00.000 - 00:00:00.050), 50 segments on
(00:00:00.051 and up)
Bar 0 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
Dev
Floating_point None 0 - 50 segments on (0.0 - 50.0), 50 segments on (51.0 and up)
Bar 0 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
Dev
DEV format is not valid for intensified segments and causes a 'INVALID DISP OP' diagnostic
#LISEGn Discrete: None off, segment 1 on
#MISEGn Bar off (< lo_limit), one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on
(> hi_limit)
#RISEGn Short_state: None off (0), one of segments 1 - 15 on (1 - 15)
Bar off (< lo_limit), one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on
(> hi_limit)
Long_state: None off (0), one of segments 1 - 50 on (1 - 50), segment 50 on (51 - 255)
Bar off (< lo_limit), one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on
(> hi_limit)
Count: None off (0), one of segments 1 - 50 on (1 - 50), segment 50 on (51 - 65535)
Bar off (< lo_limit), one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on
(> hi_limit)
Msec_time: None off (0), one of segments 1 - 50 on (00:00:00.001 - 00:00:00.050), segment 50
on (00:00:00.051 and up)
Bar off (< lo_limit), one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on
(> hi_limit)
Floating_point None off (0.x), one of segments 1 - 50 on (1.0 - 50.0), segment 50 on (51.0 and up)
Bar off (< lo_limit), one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on
(> hi_limit)
#LED Discrete: na off, on
#BEEPER Short_state: na off (0), on (1), system use (2 - 15)
Long_state: na off (0), on (1), system use (2 - 255)
Count: na off (0), on (1), system use (2 - 65535)
Msec_time: na off (00:00:00.000), on (00:00:00.001), system use (00:00:00.002 and up)
Floating_point na off (0.x), on (1.x), system use (2.0 and up)

#UPDN Discrete: na off, up arrow on


Short_state: na dn arrow, slash and up arrow show binary value (0 - 7), system use (8 - 15)
Long_state: na dn arrow, slash and up arrow show binary value (0 - 7), system use (8 - 255)
Count: na dn arrow, slash and up arrow show binary value (0 - 7), system use (8 -
65535)
Msec_time: na dn arrow, slash and up arrow show binary value (0 - 00:00:00.007), system
use (00:00:00.008 and up)
Floating_point na dn arrow, slash and up arrow show binary value of integer part (0.x - 7.x),
system use (8.0 and up)

A-5
MOD 30ML Functions

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

Table A-3. Assignment statements of type 'display_resource = constant' - ex. #LINE1 = 37.94
Resource Constant Type Displayed Result
#LINE1 Discrete: 0, 1
#LINE2 Short_state: 0 - 15
#LINE6 Long_state: 0 - 255
Count: 0 - 65535
Msec_time: hh:mm:ss
Floating_point rounded to nearest storeable value (23 bit precision) and truncated to fit 8
characters.
Date: mm/dd/yy or dd/mm/yy
Asc: truncated to 8 characters.
Hex: leftmost characters discarded if more than 8.
#LINE3 Discrete: 0, 1
#LINE4 Short_state: 0 - 15
#LINE5 Long_state: 0 - 255
Count: 0 - 999 (0 - 999), First 3 digits (1000 - 65535)
Msec_time: :ss
Floating_point rounded to nearest storeable value (23 bit precision) and truncated to fit 3
characters.
Date: /yy (pretty useless)
Asc: truncated to 3 characters
Hex: leftmost characters discarded if more than 3.
#LBAR Discrete: off, segment 1 on
#MBAR Short_state: 0 - 15 segments on
#RBAR Long_state: 0 - 50 segments on (0 - 50), 50 segments on (51 - 255)
Count: 0 - 50 segments on (0 - 50), 50 segments on (51 - 65535)
Msec_time: 0 - 50 segments on (00:00:00.000 - 00:00:00.050), 50 segments on
(00:00:00.051 and up)
Floating_point 0 - 50 segments on (0.0 - 50.x), 50 segments on (51.0 and up)
#LISEGn Discrete: off, segment 1 on
#MISEGn Short_state: off (0), one of segments 1 - 15 on (1 - 15)
#RISEGn Long_state: off (0), one of segments 1 - 50 on (1 - 50), segment 50 on (51 - 255)
Count: off (0), one of segments 1 - 50 on (1 - 50), segment 50 on (51 - 65535)
Msec_time: off (0), one of segments 1 - 50 on (00:00:00.001 - 00:00:00.050), segment 50
on (00:00:00.051 and up)
Floating_point off (0.x), one of segments 1 - 50 on (1.0 - 50.x), segment 50 on (51.0 and up)
#LED Discrete: off, on
#BEEPER Short_state: off (0), on (1), system use (2 - 15)
Long_state: off (0), on (1), system use (2 - 255)
Count: off (0), on (1), system use (2 - 65535)
Msec_time: off (00:00:00.000), on (00:00:00.001), system use (00:00:00.002 and up)
Floating_point off (0.x), on (1.x), system use (2.0 and up)
#UPDN Discrete: off, up arrow on
Short_state: dn arrow, slash and up arrow show binary value (0 - 7), system use (8 - 15)
Long_state: dn arrow, slash and up arrow show binary value (0 - 7), system use (8 - 255)
Count: dn arrow, slash and up arrow show binary value (0 - 7), system use (8 - 65535)
Msec_time: dn arrow, slash and up arrow show binary value (0 - 00:00:00.007), system use
(00:00:00.008 and up)
Floating_point dn arrow, slash and up arrow show binary value of integer part (0.x - 7.x),
system use (8.0 and up)

A-6
MOD 30ML Functions

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

Table A-4. Assignment statements of type 'display_resource.SRC = source_name' (ex. #LINE1.SRC = I1)
Resource Format Displayed Result
#LINE1.SRC Discrete: Integer1 0, 1
#LINE2.SRC State NOTE 1
#LINE3.SRC Short_state: Integer1 0 - 15
State NOTE 1
Long_state: Integer1 0 - 255
State NOTE 1
Count: Integer2 0 - 65535
State NOTE 1
Msec_time: Integer4 0 - 99999999 (0 - 99999999), first 8 digits alternate with 'OVERFLOW'
(100000000 and up)
Time1 hh:mm:ss (00:00:00.000 to 99:59:59.999), hhhh:mm alternates with
'OVERFLOW' (100:00:00.000 and up)
Time2 m:ss.sss (0:00.000 to 9:59.999), 'OVERFLOW' alternates with mm:ss.ss
(10:00.000 to 99:59.999),
hh:mm:ss (00:00:00.000 to 99:59:59.999), hhhh:mm (100:00:00.000 and up)
Time3 hhhh:mm
Time4 mm:ss.ss (10:00.000 to 99:59.999), 'OVF' alternates with
hh:mm:ss (00:00:00.000 to 99:59:59.999), hhhh:mm (100:00:00.000 and up)
Floating_point Floatn 0.0 - 99999999 (0.0 - 99999999.0), first 8 digits alternate with 'OVERFLOW'
(100000000.0 and up)
Date: Date mm/dd/yy or dd/mm/yy
Asc: Ascii = input, marqueed if necessary
Hex: Hex = input, marqueed if necessary

#LINE3.SRC Discrete: Integer1 0, 1


#LINE4.SRC State NOTE 1
#LINE5.SRC Short_state: Integer1 0 - 15
State NOTE 1
Long_state: Integer1 0 - 255
State NOTE 1
Count: Integer2 0 - 999 (0 - 999), first 3 digits alternate with 'OVF' (1000 - 65535)
State NOTE 1
Msec_time: Integer4 0 - 999 (0 - 999), first 3 digits alternate with 'OVF' (1000 and up)
Time1 :ss, alternates with 'OVF' if > 0:00:99.999
Time2 sss, alternates with 'OVF' if > 0:00:00.999
Time3 :mm, alternates with 'OVF' if > 0:99:59.999
Time4 .ss, alternates with 'OVF' if > 0:00:00.999
Floating_point 0.0-999 (0.0-999.0), first 3 digits alternate with 'OVERFLOW' (1000.0 & up)
Date: /yy (right justified)
Asc: = input, marqueed if necessary
Hex: = input, marqueed if necessary

Note 1: If the source value is found in the state table, the associated mnemonic is displayed. Otherwise the
default mnemonic is displayed.All mnemonics in a state table have the same configured width. If not
entered full width, they are padded with trailing spaces during compile. If the mnemonic field is wider
than the display it is truncated to fit. Otherwise it (the entire field) is right justified.

A-7
MOD 30ML Functions

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

Table A-4. Assignment statements of type 'display_resource.SRC = source_name' (ex. #LINE1.SRC = I1)
Resource Format Displayed Result
segment 1 remains on for source <= 0 to indicate bar is in use.
#LBAR.SRC Discrete: None segment 1 on
#MBAR.SRC Bar 1 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
#RBAR.SRC Dev
Short_state: None 1 - 15 segments on
Bar 1 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
Dev
Long_state: None 1 - 50 segments on (0 - 50), 50 segments on (51 - 255)
Bar 1 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
Dev
Count: None 1 - 50 segments on (0 - 50), 50 segments on (51 - 65535)
Bar 1 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
Dev
Msec_time: None 1 - 50 segments on (00:00:00.000 - 00:00:00.050), 50 segments on
(00:00:00.051 and up)
Bar 1 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
Dev
Floating_point None 1 - 50 segments on (0.0 - 50.0), 50 segments on (51.0 and up)
Bar 1 - 50 segments on (lo_limit - hi_limit), 50 segments on (> hi_limit)
Dev
segment 1 remains on for source <= 0 to indicate bar is in use. DEV format is not valid for iseg's and causes
a 'INVALID DISP OP' diagnostic.
#LISEGn.SRC Discrete: None segment 1 on
#MISEGn.SRC Bar one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on (> hi_limit)
#RISEGn.SRC Short_state: None one of segments 1 - 15 on
Bar one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on (> hi_limit)
Long_state: None one of segments 1 - 50 on (0 - 50), segment 50 on (51 - 255)
Bar one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on (> hi_limit)
Count: None one of segments 1 - 50 on (0 - 50), segment 50 on (51 - 65535)
Bar one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on (> hi_limit)
Msec_time: None one of segments 1 - 50 on (00:00:00.000 - 00:00:00.050), segment 50 on
(00:00:00.051 and up)
Bar one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on (> hi_limit)
Floating_point None one of segments 1 - 50 on (0.0 - 50.0), segment 50 on (51.0 and up)
Bar one of segments 1 - 50 on (lo_limit - hi_limit), segment 50 on (> hi_limit)
#LED.SRC Discrete: NA off, on
#BEEPER.SRC Short_state: NA off (0), on (1), system use (2 - 15)
Long_state: NA off (0), on (1), system use (2 - 255)
Count: NA off (0), on (1), system use (2 - 65535)
Msec_time: NA off (00:00:00.000), on (00:00:00.001), system use (00:00:00.002 and up)
Floating_point NA off (0.x), on (1.x), system use (2.0 and up)

A-8
MOD 30ML Functions

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

Table A-4. Assignment statements of type 'display_resource.SRC = source_name' (ex. #LINE1.SRC = I1)
Resource Format Displayed Result
#UPDN.SRC Discrete: NA off, up arrow on
Short_state: NA dn arrow, slash and up arrow show binary value (0 - 7), system use (8 - 15)
Long_state: NA dn arrow, slash and up arrow show binary value (0 - 7), system use (8 - 255)
Count: NA dn arrow, slash and up arrow show binary value (0 - 7), system use (8 -
65535)
Msec_time: NA dn arrow, slash and up arrow show binary value (0 - 00:00:00.007), system
use (00:00:00.008 and up)
Floating_point NA dn arrow, slash and up arrow show binary value of integer part (0.x - 7.x),
system use (8.0 and up)

A-9
MOD 30ML Functions

APPENDIX A - ASSIGNMENT STATEMENT REFERENCE

A-10
MOD 30ML Functions

APPENDIX B - DISPLAYED CHARACTER SET

APPENDIX B
DISPLAYED CHARACTER SET

The Application builder allows any character in the ASCII range of 0 to 127 (decimal 32 to 126 can be entered
through the normal keyboard characters). Of this set, many will display as blank or some other symbol. The
set usable from the instrument front face is indicated by a †. The table below shows the complete displayed
character set for the range 0 to 127.

CAUTION. The instrument does not check communications messages from other devices that may send
ascii data for display. If ascii data exceeds the valid range of 0 to 127, the display may behave erratically
or lock up. DO NOT USE ASCII DATA IN THE RANGE OF 128 TO 255 FOR DISPLAY!

Decimal Keyboard Display Decimal Keyboard Display Decimal Keyboard Display

0 19 38 &

1 20 39 '

2 21 40 (
(space
3 22 41 )
indicator)
4 23 42 † *

5 24 43 † +

6 25 44 ,

7 26 45 † -

8 27 46 .

9 28 47 † /

10 29 48 † 0

11 30 49 † 1

12 31 50 † 2

13 32 † space 51 † 3

14 33 ! 52 † 4

15 34 “ 53 † 5

16 35 † # 54 † 6

17 36 $ 55 † 7

18 37 † % 56 † 8

B-1
MOD 30ML Functions

APPENDIX B - DISPLAYED CHARACTER SET

Decimal Keyboard Display Decimal Keyboard Display Decimal Keyboard Display

57 † 9 84 † T 111 † o

58 : 85 † U 112 † p

59 ; 86 † V 113 q

60 † < 87 † W 114 † r

61 † = 88 † X 115 † s

62 † > 89 † Y 116 † t

63 ? 90 † Z 117 † u

64 @ 91 [ 118 † v

65 † A 92 \ 119 † w

66 † B 93 ] 120 x

67 † C 94 ^ 121 y

68 † D 95 _ 122 z

69 † E 96 ` 123 {

70 † F 97 a 124 |

71 † G 98 † b 125 }

72 † H 99 † c 126 ~

73 † I 100 † d 127

74 † J 101 † e
† Standard faceplate character
75 † K 102 f
set.
76 † L 103 g

77 † M 104 † h

78 † N 105 i

79 † O 106 j

80 † P 107 † k

81 † Q 108 † l

82 † R 109 † m

83 † S 110 † n

B-2
The Company’s policy is one of continuous product improvement and
the right is reserved to modify the information contained herein without
notice, or to make engineering refinements that may not be reflected in
this bulletin. Micromod Automation assumes no responsibility for errors
that may appear in this manual.
© 2004 MicroMod Automation, Inc. Printed in USA

IB-1800R-APP, Issue 3 3/2005

MicroMod Automation, Inc.


75 Town Centre Drive
Rochester, NY USA 14623
Tel. 585-321 9200
Fax 585-321 9291
www.micromodautomation.com

You might also like