OPC DA (OPC Data Access) is an OPC Classic
standard that enables real-time process data to be shared
between different software applications and systems
in industrial automation environments.
With OPC DA, data collected from PLCs, DCS, RTUs, drives,
control systems, and other industrial devices can be
made available through an OPC Server
to OPC Client applications such as
SCADA, HMI, data logging, and analysis software.
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.
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.
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.
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.
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.
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.
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.
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.
-
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.
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 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 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.