Expression block (fp-3000 specific), Data types supported, Expression block (fp-3000 specific) -5 – National Instruments FP-3000 User Manual

Page 57: Data types supported -5

Advertising
background image

Chapter 4

Block Reference

© National Instruments Corporation

4-5

FieldPoint FP-3000 User Manual

Expression Block (FP-3000 Specific)

The Expression block in the FP-3000 is a “programmable” block into
which you can enter your own algorithm for the block in the form of a
C-language style expression.

The FP-3000 Expression block includes the following features:

1.

Simple discrete control that was not possible with the standard
F

O U N D A TIO N

Fieldbus specified blocks.

2.

Custom analog alarming/interlocks.

3.

Input and output signal characterization.

4.

Expression processing encapsulated into a convenient module with a
clean interface, so that it can be easily be incorporated wherever
desired.

The architecture of the expression language in the FP-3000 is to take a
textual representation of an expression and produce the appropriate code
for it.

Data Types Supported

The fundamental data types manipulated with expressions are F

O U N D A TIO N

Fieldbus value/status pairings. These carry an analog (IEEE-754 floating
point) or discrete (32-bit signed integer) value, as well as a status that
describes the quality of the data. The discrete data type supported by the
expression language is an extension of the Fieldbus discrete value status in
that it is a full 32-bit integer, as opposed to a number from 0-16. This
improves the flexibility of the data type and does not interface with
compatibility. The FP-3000 automatically converts between discrete
values and floating point values as needed. In the event that a floating point
being converted to discrete results in an overflow, the value is reported as
0xFFFFFFFF.

The presence of both the value and the status in the data types allows
numerical expressions to automatically calculate a status for the result of
the expression. In simple cases, this keeps you from having to implement
status handling logic. In the event that a value comes from a source that
does not provide status information, the status information will be marked
as invalid and ignored in status calculations.

Advertising