Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

PI Interface for OPC DA

OPC array index attribute (userint1)

  • Last UpdatedSep 28, 2022
  • 2 minute read

The userint1 attribute maps a PI point value to an element in an OPC array item. Ensure that all PI points that are mapped to the same OPC array have identical settings for instrumenttag, exdesc, and all location attributes.

For PI points that are not mapped to an OPC array, set userint1 to 0 (zero).

An OPC array item contains multiple values plus a single time stamp and a quality field. These items can be identified by using the PI OPC Client tool to read the item and examining the data type returned by the OPC server. If it is an array item, the type of the value is VT_ARRAY | VT_other, where VT_other is a data type such as VT_R4 or VT_I2. The values in the array are sent as one data item and they all have the same data type.

Data Archive does not support PI points with an array type, so values must be assigned to a number of individual PI points. The first value in the array maps to the PI point that has userint1 set to 1, the second to the tag with userint1 set to 2, and so on.

If these values need to be processed as different data types, use the location2 attribute for the PI point with userint1=1 and the settings for scaling and transformation for each individual point to configure how PI Interface for OPC DA handles the individual value.

PI Interface for OPC DA receives the data using the data type specified by the location2 value for the point with userint1=1, then processes the value according to how the individual point is configured. Note that some servers cannot provide array data using any data type other than the canonical, or native, data type (the one displayed in the PI OPC Client tool if you omit data type). For those servers, you must either use a PI point with the correct data type, or set location2 to 8 to configure the interface to ask for the canonical data type. For maximum efficiency, always request the canonical data type.

Related Links
TitleResults for “How to create a CRG?”Also Available in