What is OPC DA?

OPC DA, short for OPC Data Access, is an OPC standard that enables industrial process data to be shared between software applications in a standardized way.

The main purpose of OPC DA is to provide a common data access method between automation devices from different manufacturers and SCADA, HMI, data logging, reporting, and analysis applications that use the data collected from these devices.

OPC DA is not a direct PLC communication protocol. Typically, an OPC Server communicates with a PLC or another field device. The server then makes the data received from the device available to other applications according to the OPC standard.

For example, a temperature value from a PLC can be read by an OPC Server and then accessed through OPC DA by a SCADA application, data logging application, or another OPC Client.

How Does OPC DA Work?

OPC DA is primarily based on a Client / Server architecture. The OPC Server is positioned between the data source and the application that uses the data.

OPC Server

An OPC Server is software that collects information from field devices or other data sources and makes this information available to OPC Client applications according to the OPC DA standard.

  • Collecting data from PLCs and RTUs
  • Communicating with DCS and control systems
  • Publishing data points within the OPC namespace
  • Managing data read and write operations
  • Notifying Client applications of data changes

OPC Client

An OPC Client is an application that uses industrial data provided by an OPC Server. SCADA, HMI, data logging, reporting, and analysis software can operate as OPC Clients.

  • Discovering OPC Servers
  • Browsing data points
  • Reading data
  • Writing data when authorized
  • Monitoring data changes

OPC DA Data Addressing for EOS Software (O#)

In the EOS SCADA OPC DA client, the data address is specified using the OPC Tag name provided by the OPC Server.

O#OPC_TAG_NAME

For example:

O#Channel_0_User_Defined.Ramp.RampXL3

The valid Tag name on the OPC Server must be used directly in the OPC DA data address.

OPC DA Data Flow

In a basic OPC DA system, data flows through the following stages:

1. Field Device

A PLC, RTU, DCS, drive, or other control device generates process data.

2. OPC Server

The OPC Server collects data from the device and makes it available within the OPC DA data space.

3. OPC DA

OPC DA provides the standardized data access model between the OPC Server and Client application.

4. OPC Client

A SCADA, HMI, Data Logger, or other application uses the data provided by the OPC Server.

OPC DA Data Points

In OPC DA, variables in field devices are generally referred to as Items or Data Items.

An OPC Item can represent a temperature, pressure, flow rate, motor status, valve position, power value, or any other process variable.

An OPC Server can present these data points within an address space using a hierarchical structure. An OPC Client application can Browse this space to find the available data points.

For example, an OPC Server may provide a structure such as:

Plant
 ├── Boiler
 │    ├── Temperature
 │    ├── Pressure
 │    └── SteamFlow
 │
 ├── Turbine
 │    ├── Speed
 │    ├── Power
 │    └── Temperature
 │
 └── Generator
      ├── Voltage
      ├── Current
      └── Frequency

This structure may vary depending on the manufacturer and the OPC Server software being used. The OPC DA standard defines how data access is performed; the actual Item names and address structure depend on the system being used.

Basic OPC DA Operations

Browse

Allows the data space provided by the OPC Server to be browsed and available Items to be discovered.

Read

Allows an OPC Client to read the current value of one or more data points from the OPC Server.

Write

Allows a value to be written to a data point when appropriate authorization and OPC Server support are available.

Subscription

Allows an OPC Client to monitor data changes. Instead of continuously reading every data point individually, the application can make use of change notifications.

Value, Quality and Timestamp

In OPC DA, a process variable should not be considered only as a numerical or textual value. To use the data reliably, Quality and Timestamp information are also important.

Value

The actual value of the data point. For example, a temperature sensor may provide a value of 82.5 °C.

Quality

Provides information about whether the received data is valid, reliable, or in an appropriate state. In SCADA applications, this information is important for distinguishing invalid or unreliable data.

Timestamp

Indicates the time associated with the data. Time information is critical for applications such as trending, logging, analysis, and event correlation.

OPC DA Versions

The OPC Data Access standard has evolved through different versions over time. The OPC Foundation's OPC DA specification covers the development of versions 1.x, 2.x, and 3.0.

OPC DA 1.x

Represents the first-generation implementations of the OPC Data Access standard.

OPC DA 2.x

This is the OPC DA generation that was widely used in industry for many years and can be found in many legacy and existing automation systems.

OPC DA 3.0

This is version 3.0 of the OPC Data Access specification. It includes more advanced Browse and data access features.

What Are COM and DCOM?

One of the important aspects of understanding OPC DA is understanding COM/DCOM technology. OPC Classic standards are based on Microsoft Windows technologies and use COM/DCOM for communication between software components.

COM (Component Object Model) is a Microsoft technology that enables software components running on Windows to communicate with each other through standardized interfaces.

DCOM (Distributed COM) is an extended architecture that allows COM objects to be accessed from another computer over a network.

Therefore, in OPC DA systems, the Client and Server can run on the same computer or, with appropriate Windows and DCOM configuration, on different computers.

Local and Remote OPC DA Connections

OPC DA on the Same Computer

The OPC Client and OPC Server can run on the same Windows computer. This configuration generally requires a simpler installation and setup.

OPC DA over a Network

The OPC Client and OPC Server can be located on different Windows computers. In this case, DCOM, Windows user permissions, firewall settings, and network configuration must be properly configured.

DCOM configuration is particularly important for remote OPC DA connections from a system administration perspective. User permissions, computer security policies, and firewall settings can directly affect whether the connection works correctly.

Where Is OPC DA Used?

OPC DA has been widely used for many years, particularly in Windows-based industrial automation systems, to allow different software applications to access the same process data.

SCADA Systems

Displaying data obtained from PLCs, DCS systems, and other automation systems on SCADA screens.

Data Logger

Continuously or periodically recording process data from the OPC Server into a database.

Reporting and Analysis

Using real-time process data in reporting and analysis applications.

Data Sharing Between Systems

Providing a common data access mechanism between software applications from different vendors.

Industrial Facilities

Sharing real-time data between software applications in energy, manufacturing, process, water, automation, and other industrial facilities.

Integration

Transferring data from existing automation infrastructure to new software and applications.

Advantages of OPC DA

  • Provides a standardized data access model between systems from different vendors.
  • Makes it easier for SCADA, HMI, Data Logger, and analysis applications to access the same process data.
  • Supports fundamental data access operations such as Browse, Read, Write, and Subscription.
  • Important information such as Quality and Timestamp can be transferred along with the data value.
  • As it is a technology that has been used for many years, OPC DA support is available in a large number of existing industrial systems.
  • Can be used to connect existing Windows-based automation systems to modern applications.

Limitations of OPC DA

Although OPC DA has been successfully used in industrial automation for many years, it has some limitations in today's platform-independent and Internet-connected systems.

  • Depends on Microsoft Windows and COM/DCOM technologies.
  • DCOM configuration can be complex for remote connections between different computers.
  • Windows Firewall and security policies can affect remote OPC DA connections.
  • OPC UA provides a more suitable architecture for modern, platform-independent, and Internet-based applications.
  • OPC UA is preferred in most new system designs instead of OPC DA.

Difference Between OPC DA and OPC UA

Although OPC DA and OPC UA serve the same fundamental purpose, namely sharing industrial data between applications, their underlying architectures are significantly different.

Feature OPC DA OPC UA
Architecture OPC Classic Client / Server Platform-independent Client / Server and other models
Core Technology COM / DCOM Platform-independent OPC UA architecture
Operating System Windows-based Platform-independent
Remote Connection May require DCOM configuration More modern and network-friendly communication model
Security Dependent on Windows / DCOM security mechanisms Includes modern security mechanisms
Information Model Basic data access Advanced and extensible information model
New Systems Widely used in existing systems More suitable for new projects

The OPC Foundation describes OPC UA as the advanced, platform-independent generation of OPC Classic technologies. In addition to OPC DA, OPC UA brings OPC Classic functions such as alarms, events, and historical data access together within a more modern architecture.

OPC DA Connection Troubleshooting

Especially when the Client and Server are running on different computers, properly installing the OPC software alone may not be sufficient for OPC DA connections. Windows and DCOM configuration must also be checked.

  • Check whether the OPC Server is running.
  • Check whether the OPC Server is actually publishing the relevant Items.
  • Check whether the OPC Client has selected the correct OPC Server.
  • For a local connection, test whether the Client can access the Server.
  • For a remote connection, check Windows user accounts and DCOM permissions.
  • Check whether Windows Firewall and network communication allow the connection.
  • Check whether the 32-bit or 64-bit architecture of the OPC Server is compatible with the Client application.
  • If data can be read but the Quality information is not valid, first check the communication between the OPC Server and the field device.

OPC DA and SCADA Systems

OPC DA has been an important integration technology in SCADA systems, particularly for obtaining data from automation systems supplied by different vendors.

For example, a facility may contain PLCs from different vendors, DCS systems, or specialized control software. While each of these systems may use its own communication method, the OPC Server can provide data from these different sources to the SCADA system through a common OPC DA interface.

This allows the SCADA application to use a standardized data access method through the OPC Server as an OPC Client, instead of directly supporting the proprietary communication protocol of every device vendor.

OPC DA Tools

This section will provide tools that can be used to work with OPC DA, test OPC Servers, Browse data points, read and write data, or develop OPC DA Client applications.

This section is currently under development. Free OPC DA tools, sample applications, test software, and utility tools will be shared here in the future.

OPC DA Browser

Tools that can be used to discover OPC Servers and Browse available data points.

OPC DA Client

Applications that can connect to an OPC DA Server to test data reading, writing, and Subscription operations.

OPC DA Development Tools

Sample code, libraries, and utility tools that can be used to develop OPC DA Client or Server applications.

OPC DA Test Tools

Tools that can be used to test OPC DA connections, data quality, Item access, and communication status.

OPC DA in Brief

OPC DA is an OPC Classic standard that has been used for many years to enable real-time data sharing between different software applications in industrial automation systems.

The basic architecture consists of an OPC Server that obtains data from field devices and one or more OPC Clients that use this data. Client applications can Browse and read data, write data when appropriate permissions are available, and monitor data changes through the Subscription mechanism.

OPC DA still plays an important role, particularly in the integration of existing Windows-based industrial systems. However, OPC UA may be a more suitable option for new systems due to requirements such as platform independence, security, and modern network communication.