Function Blocks - General Information

Inside this topic

Function Blocks
General Function Block Information
Guide to Function Blocks
Function Block Parameters and Fields
Extensible Blocks
Block Scan Rate
(Use Ctrl+F to search this topic.)

The following sections provide detailed information on all of the DeltaV function blocks. This includes schematic diagrams, block executions, application information, parameters, modes, status handling, and alarms.


Function Blocks

The DeltaV system utilizes modular configuration for developing a control strategy. The control modules are treated as unique, named control entities in the DeltaV system. The function block is the basic component of a control module, that is, it is the building block of the control module. Each function block contains standard process control algorithms (such as PID, Analog Out, and Analog In) and parameters that customize the algorithm.

Function block algorithms range from simple input conversions to complex control strategies. The function block uses parameter data supplied by the user, by the function block itself, or by other function blocks to perform its calculations and logic functions and to supply an output value to other function blocks or to field devices. Some function blocks also detect alarm conditions.

You can connect function blocks together in a control module so that data can be transmitted between blocks. This data can be used in the control algorithm, mathematical or logical calculation, or status determination of the block. Refer to the Function Block Diagram topic for more information. This capability helps you implement a variety of process control strategies, including advanced control, shutdown sequences, and process reactions to quality control information.


General Function Block Information

There are six categories of function blocks in the DeltaV system:

In addition, there is a collection of special items that contains input and output parameters, internal read and write parameters, and custom and physical block tools.


Guide to Function Blocks

The following table includes the DeltaV palette icon for each function block and a brief description of the capabilities of the block:

DeltaV Standard Function Blocks

Icon

Function Block

Palette Category

Description

Absolute Value Math Blocks Provides the absolute value of an integer or floating-point input value.
Action (ACT) Logical Blocks Evaluates a single-line expression based on an input value. Mathematical functions, logical operators, and constants can be used in the expression.
Add (ADD) Math Blocks Sums the values of two to sixteen inputs and generates an output value. The block supports signal status propagation.
Alarm Detection (ALARM) Analog Control Blocks Provides the ability to easily specify alarms on parameters that are obtained from I/O or from the results of other function block calculations.
Analog Input (AI) I/O Blocks Accesses a single analog measurement value and status from an I/O channel. The input value can be a transmitter's 4 to 20 mA signal or the digitally communicated primary or non-primary variable from a HART transmitter. The block supports mode control, block alarming, signal scaling, signal filtering, signal status calculation, and simulation.
Analog Output (AO) I/O Blocks Assigns an analog output value to a field device through a specified I/O channel. The block supports mode control, signal status calculation, and simulation.
And (AND) Logical Blocks Generates a discrete output value based on the logical AND of two to sixteen discrete inputs. The block supports signal status propagation.
Arithmetic Math Blocks Provides the ability to configure a range extension function for a primary input and applies the nine different arithmetic types as compensation to or augmentation of the range extended input.
Bias/Gain (BG) Analog Control Blocks Provides adjustable gain capability by computing an output value from a bias setpoint, an input, and a gain value The block supports output tracking.
Bi-directional
Edge (BDE)
Trigger
Logical Blocks Generates a True (1) discrete pulse output when the discrete input makes a positive (False-to-True) or negative (True-to-False) transition since the last execution of the block. The block supports signal status propagation.
Boolean Fan
Input (BFI)
Logical Blocks Generates a discrete output based on the weighted binary sum, binary coded decimal (BCD) representation, transition state, or logical OR of one to sixteen discrete inputs. The block supports signal status propagation.
Boolean Fan
Output (BFO)
Logical Blocks Decodes a binary weighted floating point input to individual bits and generates a discrete output value for each bit (as many as sixteen outputs). The block supports signal status propagation.
Calculation/Logic
(CALC)
Analog Control Blocks Allows you to specify an expression that determines the block's output. Mathematical functions, logical operators, constants, parameter references, and I/O reference values can be used in the expression.
Comparator (CMP) Math Blocks Compares two values and sets a Boolean output based on that comparison.
Condition (CND) Logical Blocks Evaluates a single-line expression and generates a discrete output value when the expression is evaluated True (1) for longer than a specified time period. Mathematical functions, logical operators, and constants can be used in the expression.
Control Selector
(CTLSL)
Analog Control Blocks Selects one of three control signals to perform override control to a PID function block. The block supports mode control.
Counter (CTR) Timer/Counter Blocks Generates a discrete output of True (1) when the count reaches a specified trip value. The block functions as an incremental (up) counter or a decremental (down) counter. The block supports signal status propagation.
Date Time Event (DTE) Timer/Counter Blocks Provides Time Of Day Timer functions. Use the Timer functions to obtain date and time information in various formats, as well as manipulate date and time information. The function block allows scheduling future events at a specified date and time.
Deadtime (DT) Analog Control Blocks Introduces a pure time delay in the value and status used in a signal path between two function blocks. The block supports signal status propagation and mode control.
Device Control
(DC)
Logical Blocks Provides setpoint control for multistate discrete devices. As many as four inputs and four outputs can be controlled. The basic functionality is augmented by an assortment of interlocks and device control options to customize the block's operation to your application. The block supports mode control, simulation, field device confirmation, and alarm limit detection.
Diagnostic (DIAG) Advanced Control Blocks Provides a method to monitor device alerts from non-fieldbus assets. Wire parameters or block outputs that indicate device health for non-fieldbus blocks to the Diagnostic block. These alerts from these diagnostic blocks are monitored by Inspect.
Discrete Input
(DI)
I/O Blocks Accesses a single discrete measurement value and status from a two-state field device and makes the processed physical input available to other function blocks. The block supports mode control, signal status propagation, and simulation.
Discrete Output
(DO)
I/O Blocks Takes a binary setpoint and writes it to a specified I/O channel to produce an output signal. The block supports mode control, output tracking, simulation, and field device confirmation.
Divide (DIV) Math Blocks Divides one input value by another input value and generates an output value. The block supports signal status propagation.
Fieldbus Input Selector Extended
(ISELX)
Analog Control Blocks A mathematical and logical input calculation block that chooses an output based on up to 8 inputs.
Fieldbus Multiple Discrete Input
(FFMDI)
I/O Blocks Combines the eight channels of a Discrete Input card and makes them available as an 8-bit input to other function blocks.
Fieldbus Multiple Discrete Output
(FFMDO)
I/O Blocks Takes an 8-bit setpoint and writes it to the I/O channels of a Discrete Output card on an H1 Carrier device.
Filter (FLTR) Analog Control Blocks Applies an equation to filter changes in the input signal and generates a smooth output signal. The block supports signal status propagation.
Flow Metering (AGA_SI and AGA_US) Energy Metering Blocks Implements the American Gas Association flow calculation standards for natural gases, namely AGA-3 (American Gas Association, Report No.3), AGA-7, and AGA-8.
Fuzzy Logic
Control (FLC)
Advanced Control Blocks Provides all the logic to perform standard PID control with the added benefit of superior response for both set point changes and external load disturbances.
Input Selector
(INSEL)
Analog Control Blocks A mathematical and logical input calculation block that chooses an output based on up to 4 inputs.
Inspect Advanced Control Blocks A block that receives statistics data so that you can view, plot, and add to history, the performance values in the system.
Integrator (INT) Math Blocks Integrates a variable over time. The block compares the integrated or accumulated value to pre-trip and trip limits and generates discrete output signals when the limits are reached. The integrated value can increment from zero or decrement from the trip value. The block has two inputs and can calculate and integrate net flow, as well as handling negative flow. The block supports mode control.
Isentropic
Expansion (ISE)
Energy Metering Blocks Calculates the final enthalpy for isentropic expansion of steam to a given pressure for a given entropy.
Lab Entry (LE) Advanced Control Blocks Provides for operator input of offline lab analysis results.
Lead/Lag (LL) Analog Control Blocks Provides dynamic compensation for an input value. The block can apply a lead time function, a lag time function, or a combination of the two. A specified gain is applied to the compensated value, and the value is high/low-limited based on the block mode. The block supports mode control and signal status propagation.
Limit (LIM) Analog Control Blocks Limits an input value between two reference values. The block supports signal status propagation.
Manual Loader
(MANLD)
Analog Control Blocks Allows the block output to be set by an operator. The block supports output tracking and alarm detection.
Model Predictive
Control (MPC)
Advanced Control Blocks Allows interactive processes to be controlled within measurable operating constraints while automatically accounting for process interaction and measurable disturbances.
Model Predictive
Control Professional (MPCPro)
Advanced Control Blocks Allows large interactive processes (as large as 20 x20) to be controlled within measurable operating constraints while accounting for process interaction and measurable disturbances. An embedded optimizer is included with the MPCPro block that can be used to effectively provide maximum profit or lowest cost production with the process constraints and limits on process inputs.
MPC Process
Simulator
Advanced Control Blocks Simulates the actual process for use with the MPC function block for operator training.
Multiplexed Analog
Input (MAI)
I/O Blocks Connects higher density transmitters to a Fieldbus segment.
Multiplexer
(MLTX)
Logical Blocks Selects one input value from as many as sixteen input values and places it at the output. The block supports signal status propagation.
Multiply (MLTY) Math Blocks Multiplies two to sixteen input values and generates an output value. The block supports signal status propagation.
Negative Edge
Trigger (NDE)
Logical Blocks Generates a True (1) discrete pulse output when the discrete input makes a negative (True-to-False) transition since the last execution of the block. The block supports signal status propagation.
Neural Network
(NN)
Advanced Control Blocks Uses a neural network to predict a process output based on measured process inputs.
Not (NOT) Logical Blocks Logically inverts a discrete input signal and generates a discrete output value. The block supports signal status propagation.
Off-delay Timer
(OFFD)
Timer/Counter Blocks Delays the transfer of a False (0) discrete input value to the output by a specified time period. The block supports signal status propagation.
On-delay Timer
(OND)
Timer/Counter Blocks Delays the transfer of a True (1) discrete input value to the output by a specified time period. The block supports signal status propagation.
Or (OR) Logical Blocks Generates a discrete output value based on the logical OR of two to sixteen discrete inputs. The block supports signal status propagation.
PID (PID) Analog Control Blocks Combines all the necessary logic to perform analog input channel processing, proportional-integral-derivative (PID) control, and analog output channel processing within one function block. The block supports mode control, signal scaling and limiting, feedforward control, override tracking, alarm limit detection, and signal status propagation.
Positive Edge
Trigger (PDE)
Logical Blocks Generates a True (1) discrete pulse output when the discrete input makes a positive (False-to-True) transition since the last execution of the block. The block supports signal status propagation.
Pulse Input (PIN) I/O Blocks Provides analog input values from Pulse Input channels on the Multifunction I/O card.
Ramp (RAMP) Analog Control Blocks Creates a ramping output signal to increase or decrease a variable toward a specified target value at a defined rate. The block supports signal status propagation.
Rate Limit (RTLM) Analog Control Blocks Limits the rate of change of the output value to specified limits. The block supports signal status propagation.
Ratio (RTO) Analog Control Blocks Applies an adjustable ratio setpoint to achieve a desired input/output relationship. The block supports signal filtering, mode control, output tracking, and alarm detection.
Reset/Set
Flip-flop (RS)
Logical Blocks Generates a discrete output value based on NOR logic of reset and set inputs.
Retentive Timer
(RET)
Timer/Counter Blocks Generates a True (1) discrete output after the input has been True for a specified time period. The elapsed time the input has been True and the output value are reset when the reset input is set True.
Scaler (SCLR) Analog Control Blocks Provides scaling and dimensional consistency between two values of different engineering units. The block converts the input value to the specified scale and generates an output value. The block supports signal status propagation.
Set/Reset
Flip-flop (SR)
Logical Blocks Generates a discrete output value based on NAND logic of set and reset inputs.
Signal Characterizer
(SGCR)
Analog Control Blocks Characterizes or approximates any function that defines an input/output relationship. The block interpolates an output value for a given input value using the curve defined by the configured coordinates. Two separate analog input signals can be processed simultaneously to give two corresponding separate output values using the same defined curve. The block supports signal status propagation.
Signal Generator
(SGGN)
Analog Control Blocks Produces an output signal used to simulate a process signal. The block uses a specified combination of a sine wave, a square wave, a bias value, and a random value to generate the output signal.
Signal Selector
(SGSL)
Analog Control Blocks Selects the maximum, minimum, or average of as many as sixteen input values and places it at the output. The block supports signal status propagation.
Splitter (SPLTR) Analog Control Blocks Takes a single input and calculates two outputs based on specified coordinate values. The block supports mode control and signal status propagation.
Subtract (SUB) Math Blocks Subtracts one input value from another input value and generates an output value. The block supports signal status propagation.
Steam Density Ratio
(SDR)
Energy Metering Blocks Calculates the square root of the ratio of steam density to the density of steam corresponding to a flow meter calibration pressure and temperature.
Saturated Steam
Properties at
Temperature (SST)
Energy Metering Blocks Calculates steam enthalpy, entropy, specific volume, and pressure for saturation conditions specified by a given temperature.
Steam Properties
(STM)
Energy Metering Blocks Calculates steam enthalpy, entropy, and specific volume for a given gauge pressure.
Saturated
Temperature (TSS)
Energy Metering Blocks Calculates the steam temperature at saturation given the steam pressure.
Timed Pulse (TP) Timer/Counter Blocks Generates a True (1) discrete output for a specified time duration when the input makes a positive (False-to-True) transition. The output remains True even when the input returns to its initial discrete value and returns to its original False value only when the output is True longer than the specified time duration.
Transfer (XFR) Logical Blocks Selects one of two analog input signals and transfers the selected input to the output after a specified time. The transfer from one input to another is smoothed with a linear ramp. The block supports signal status propagation.
Water Enthalpy
(WTH)
Energy Metering Blocks Calculates the enthalpy of water for a specific temperature.
Water Entropy
(WTS)
Energy Metering Blocks Calculates the entropy of water for a specified temperature.

Function Block Parameters and Fields

A parameter is a named, logical grouping of data, such as SP and PV that exists in a function block. Each element of data within the parameter is referred to as a field. The following table describes fields that are common to may parameters. More specialized parameter fields are described in the following topics:

The ALARMS Parameter

Module Alarm Parameter Fields

External Reference Parameter

Dynamic Reference Parameter

Internal Reference Parameter

Common Function Block Fields

Field

Description

$REF The referenced path of an internal, external, or dynamic reference parameter.
AWST Provides a means to tell if the last attempt to write the referenced parameter was successful.
CST Provides a means to tell if the reference has been resolved (that is, the value has been found and can be read).
CV Current value.
CVI Current value in integer format.
DECPT The number of decimal places to show in the interface.
ENABLE Enable simulation.
EU0 Engineering unit value as 0% of scale (field for OUT_SCALE, XD_SCALE).
EU100 Engineering unit value as 100% of scale (field for OUT_SCALE, XD_SCALE).
FSTATUS Displays the actual discrete channel status when in online mode.
OPSEL Comma delimited string of the operator selectable states of a named set parameter (workstation only).
SET The associated named set of a named set parameter.
SSTATUS Simulated status (user entered). When simulation is disabled, SSTATUS tracks FSTATUS.
ST Status.

Extensible Blocks

Many of the standard function blocks are extensible. This capability means you can increase the number of some of the parameters. The function blocks that are extensible are: Add, And, BFI, BFO, Calc/Logic, Multiply, Multiplexer, Or, and Signal Selector.

For example, you do not have to join together multiple ADD blocks to add more than two numbers together. You can extend the number of inputs on the block and wire as many as 16 values into a single ADD block. Refer to the Extensible Parameters topic for more information.


Block Scan Rate

Blocks can execute at different rates within the same module using the block scan rate. The block scan rate forces the function block's execution to skip a certain number of scans for that module. By default, function blocks in a module have a block scan rate of one (1). If the block scan rate is one, it is not displayed on the block. You can change the block's scan rate to a positive integer value.

The block scan rate indicates the number of times the module's algorithm is executed compared to the block. For example, if the block scan rate is one, there is a 1:1 ratio. Every time the module scans, the block executes. If the block scan rate is 3, there is a 1:3 ratio and the block is executed every third scan.

If a module's scan rate is 1 second and you set the block scan rate of a block in that module to 5, the block executes every 5 seconds. The block execution skips for four module scans and executes on the fifth scan. The block scan rate of the block effectively multiplies the module scan rate.

Use this feature for cascade control. For example, combine the two loops required for cascade control into one module, as long as the scan rate for the outer loop is a multiple of the scan rate for the inner loop.