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

AVEVA™ Plant SCADA

Read Data Using the CtAPI Functions

  • Last UpdatedSep 16, 2025
  • 2 minute read

I/O tags interface

The Plant SCADA I/O server is designed on a client read on-demand basis. The I/O server will read I/O tags from the I/O devices when requested to by a client. This reduces the load on the I/O devices and increases the overall system performance.

The client interface to the real time data is more complex as the client needs to wait for a physical I/O cycle to complete before the data can be used. The client needs to request the data it requires from the I/O server and then wait up to several seconds while the I/O server reads the requested data. This design is reflected in the operation of the CTAPI interface. Using CTAPI to read a tag can take several seconds to complete. It is up the caller to allow for this in their design in calling this interface.

If you need to use a polling type of service, use the ctList functions.

The Tag functions

The simplest way to read data is via the ctTagRead function. This function reads the value of a single variable, and the result is returned as a formatted engineering string.

List functions

The list functions provide a higher level of performance for reading data than the tag-based interface. The functions also provide support for overlapped operations.

The list functions allow a group of tags to be defined and then read as a single request. They provide a simple tag-based interface to data which is provided in formatted engineering data. You may create several lists and control each individually.

Tags can be added to or deleted from lists dynamically, even if a read operation is pending on the list.

Array support

Arrays are supported in the tag functions ctTagWrite(), and ctTagRead(). These functions can take the singular tag name as "PV123", or use the array syntax as "Recipe[10]". When the array syntax is used in the "Recipe[10]" example, the single value can be read or written to, not the entire array.

Bit shifting when reading digital arrays

When digital types are read, Plant SCADA may adjust the starting position of the first point. This is done to improve the performance of the digital read. For example, if you start reading an array of digital values, Plant SCADA may read several digitals before the start of the array, and the data will be offset. When Plant SCADA shifts the bits, extra data will be read from the I/O Device. Plant SCADA may shift the data up to 15 bits, resulting in an extra 2 bytes of buffer space necessary for reads. Therefore, always use digital buffers which contain 2 bytes extra.

See Also

CtAPI Functions Reference

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