Previous | Table of Contents | Next |
The purpose of the DAIS Application Program Interface (API) is to support efficient real time transfer of large amounts of
data from an industrial process to a wide range of clients. It supports discovery of parameters and update of parameter values.
The DAIS is intended for on-line data transfer and cannot be used to configure servers implementing the API.
Control systems used to monitor and control industrial processes consist of the following major pieces:
• Process instrumentation making sensor data and actuation capabilities available.
• Process stations or remote terminal units (RTUs) reading sensor data and controlling actuators.
• Supervisory Control and Data Acquisition (SCADA) system making processed sensor data and control capabilities available to operators, applications, or other systems.
• Management systems using SCADA data to make further processing and control.
SCADA and management systems can be regarded having a server part where data processing is performed and a Human Machine Interface
(HMI) part where visualization and command dialogs are made. The SCADA and management system may have common or different
HMI.
This results in a hierarchical structure shown below.
Figure 1-1 Control system structure
The solid arrows in Figure 1-1 correspond to transfer of data from servers to clients. The
data can be state variables and parameters (for example, measured values, calculated values, limit values, dead bands, scan
rates, engineering units).
The dashed arrows correspond to data written to servers by clients. The data can be control variables and parameters. The
API support simple writes operations. More complex controls like select and execute (for example, breaker on/off) or raise
lower commands can be implemented combining multiple write and read operations.
As indicated in
Figure 1-1 the DAIS API can be used at several levels in a system. For
example, a DAIS server can be an RTU/Process station communication unit, a SCADA server, or even a Management system.
DAIS support both subscription and read/write operations. A subscription means server has no a priori knowledge of clients
and it is clients that establish connection with servers. Once connection is established a server calls the clients back when
data becomes available or updated. The callbacks mean the DAIS API also defines an interface that the client has to implement.
data transfer
Figure 1-2 Data subscription
Figure 1-2 shows the bi-directional subscription with connection establishment and
callback interfaces.
For historical reasons SCADA systems for different industrial processes has evolved along different lines. SCADA for power
systems has evolved onto a UNIX base and SCADA for most other industrial processes has evolved onto a Windows NT base. For
UNIX based systems APIs formulated in CORBA (Common Object Request Broker Architecture) IDL (Interface Definition Language)
are now emerging (for example, DAIS RFP [1] and UMS DAF [2]). For Windows NT based systems, such as OLE for Process Control
(OPC) [3], has become the dominating standard. OPC defines three different APIs; measurement data access [4], alarms & events
[5], and history [6]. OPC is based on Microsoft COM.
OPC is focused on the interfaces and does not explicitly describe the information model behind the interface. The information
model is however implicit and can be derived from the OPC specifications. This specification describes both the API and information
model expressed in UML.
Within the CCAPI project an information model Common Information Model (CIM) [7] has been developed. This model is now evolving
into the IEC 61970-30x draft standard [8]. The CIM contains a SCADA information model (61970-303) with its roots in power
transmission and generation. The DAIS API supports the CIM.