OPC Server


Tutorial Videos

OPC Servers are software applications (drivers) that comply with one or more OPC specifications as defined by the OPC Foundation. OPC Servers communicate natively with one or more Data Sources on one side and with OPC Clients on the other. In an OPC Client / OPC Server Architecture, the OPC Server is a Slave while the OPC Client is the Master. Communication between the OPC Client and OPC Server is bi-directional meaning the OPC Clients can read from and write to OPC Servers.

There are four types of OPC Servers defined by the OPC Foundation. They are as follows:

  • OPC DA Server – Based on OPC Data Access Specification - specifically designed
        for real-time data transmission.
  • OPC HDA Server – Based on OPC Historical Data Access Specification - provides
        OPC HDA Clients with historical data.
  • OPC A&E Server - Based on OPC Alarms & Events Specification - transfers
        Alarm and Event information to OPC A&E Clients.
  • OPC UA Server – Based on OPC Unified Architecture Specification - based on
        OPC Foundation’s newest and most advanced set of OPC Server specifications,
        allows OPC Servers to work with all data types.
  • Collectively, the first three OPC Server types are referred to as ‘classic’ OPC Servers to distinguish them from the all-encompassing OPC UA based OPC Serves that will become the main staple of future OPC architectures.

    OPC Server Architecture

    1. OPC Client - OPC Server Communications - (OPC DA Server, OPC HDA Server, OPC A&E Server)

    Classic OPC Servers utilize the Microsoft Windows’ COM/DCOM infrastructure as a means of exchanging data. This means these OPC Servers must run on the Microsoft Windows operating system. An OPC Server can support communications with multiple OPC Clients simultaneously.

    2. OPC Server - Data Translation/Mapping

    A key OPC server function is to translating data native to the data source into an OPC format that’s compatible with one or more OPC Specifications mentioned above (example: OPC DA for real-time data). OPC Foundation specifications only define what the OPC portion of OPC Server communications so the efficiency and quality of the Native-to-OPC and OPC-to-Native translations depends entirely on each vendor’s OPC Server implementation.

    3. OPC Server-Data Source Communications

    OPC Servers communicate natively with data-sources examples of which are: devices, controllers, and applications. OPC Foundation specifications do not specify how OPC Servers connect to and communicate with data sources because of the wide variety of data sources available; each of which has its own communication protocol or API communicated over any number of physical connections (serial RS485 or RS232, Ethernet, wireless, etc). Two common examples of how OPC Servers communicate with such data sources are:

  • Via an Application Programming Interface (API) for a custom driver specifically
        written for the data-source.
  • Via protocol which may or may not be proprietary or based on an open standard
        (ex. See MatrikonOPC Server for Modbus)


  • Common OPC Server Examples