Consult the interface documentation to determine which point types are supported for individual interfaces. Not all point types that are supported by the Server are necessarily supported by an interface.
Typically, DCS point types do not need to correspond to PI point types but this may be a requirement for certain interfaces. For example, integer values from a DCS can be sent to floating point or digital PI tags. Similarly, a floating-point value from the DCS can be sent to integer or digital PI tags, although the values will be truncated. This rule does not extend to string tags. UniInt will not convert an integer, float, or digital type value to a string. Unless the interface documentation specifies these conversions, only string and blob type data will be saved to a string PI tag.
Note: If an interface is not using the extended PI API functionality, negative integer values from the DCS must be stored in floating point tags in PI because negative integers cannot be transmitted by the traditional PI API. If using the extended PI API, int16 and digital tags are the only PI point types with this limitation.
Float16, float32, float64, int16, int32, digital, string, blob, and timestamp point types are supported on PI 3 Servers. For more information on the individual point types, see PI Server Reference Guide.
ExcMin, ExcMax, ExcDev and ExcDevPercent
These are the exception specification attributes.
Note: There is no ExcDevPercent attribute for PI 2 Servers. Instead, the units of ExcDev are determined by the DeviationUnits attribute.
The exception specification attributes are used to define exception-reporting specifications. Exception reporting is basically a filter. Raw values that the interface receives are filtered if they do not pass the exception-reporting specifications. If the raw values pass exception, they are sent to the Snapshot, where they can be viewed by client applications such as PI ProcessBook. Unless the /sn parameter is specified on the command-line of the interface, standard exception reporting will be implemented. The interface documentation must be consulted for exceptions to the rule.
ExcMin is the exception minimum time; ExcMax is the exception maximum time; and ExcDev is the exception deviation dead band.
ExcDev is defined in terms of engineering units. ExcDev is related to ExcDevPercent by:
ExcDev = ExcDevPercent * Span / 100
where Span is defined by the Span PI point attribute. If either ExcDev or ExcDevPercent is changed, the other is automatically updated to be compatible. If both are changed at once, ExcDevPercent takes precedence.
Raw values are said to “pass exception” if:
The difference between the new value and the last value that passed exception is greater than ExcDev
and
the difference between the times of the new value and the last value that passed exception is greater than ExcMin.
or
The difference between the times of the new value and the last value that passed exception is greater than ExcMax.
The last value that passed exception is called the “old value.” The next value that passes exception is called the “new value.” The last value that was received by the interface before the new value is called the “previous value.” There will not be a “previous value.” if the interface did not receive a value between the “old value” and the “new value.” When a new value passes exception, the previous value and the new value will be sent to the Snapshot. The new value will then become the old value, and the cycle continues.
The time between exceptions can be greater than the ExcMax if no new values are received by the interface for a point.
Note: The “previous value” will be sent to PI even if it was received before ExcMin seconds had expired. ExcMin applies only to the “new value.”