How the I/O Driver Works

graphics\driverop.gif

1. I/O Server

The I/O driver core. The I/O Server contains objects and interfaces that perform the following tasks:

  • Maintain the I/O driver configuration.
  • Read and write to third-party OPC v1.0a and v2.05 servers.
  • Expose the driver functionality through OLE automation.

2. I/O Server Objects

The I/O Server consists of the following objects:

  • Driver Object – Manages Server Objects and the overall state of the driver.
  • Server Object – A server is the I/O driver’s communication path to an OPC server. The Server Object contains the properties and methods that govern the behavior of a server and allow you to browse your OPC servers.
  • Group Object – A group is a logical association of data, called items, in a server. The Group Object contains the properties and methods that govern the behavior of an OPC group including asynchronous and synchronous communications.
  • Item Object – An item is a piece of data that can be read from an OPC server. The Item Object contains the properties and methods that manage the behavior of an item. Item Objects in the I/O Server’s local memory correspond to data areas in the Common Memory DLL. When you add new items to the I/O Server’s local memory, you also add new data areas to the Common Memory DLL.

3. OLE Interfaces

Exposes the data and functionality of the I/O Server to other applications.

4. I/O DLL

Provides functions for sending and receiving data to and from the process hardware. In this driver, your hardware vendor’s OPC server software provides these functions.

5. Common Memory DLL

Builds common memory, exposes its functionality to the Server and the NIO DLL, and stores and maintains process data.

6. NIO DLL

Contains the I/O driver’s data access API. The NIO DLL has direct access to the Common Memory DLL, providing fast and efficient read/write capability.

7. Signal Conditioning DLL

Contains the API that scales raw data to the specified engineering units.

8. I/O Driver Power Tool

Serves as a high-performance client to the I/O Server with a graphical user interface for configuring and monitoring the driver.

9. iFIX Applications

Communicates with the I/O driver through the NIO DLL. Because the NIO DLL accesses the Common Memory DLL directly, reading and writing data to iFIX applications is fast and efficient.

10. Automation Controller and COM Client Applications

Communicates with the I/O driver through the OLE Interfaces. You can design custom applications with a COM/OLE Automation programming application such as Visual Basic, Power Builder, or Visual C++.

11. Process Hardware

Includes any type of I/O device that controls a process.