This graphical presentation is for concept purpose only and depending on software provider it could vary.
1. I/O Server
Is 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 process hardware data.
Expose the driver functionality through OLE Automation.
2. Server Objects
The I/O server consists of the following objects:
Driver Object Manages Channel Objects and the overall state of the driver.
Channel Object A channel is an I/O driver’s communication path. The Channel Object contains the properties and methods that govern the behavior of a channel.
Device Object A device is a hardware device or station that exists on a channel. The Device Object contains the properties and methods that govern the behavior of a device.
Datablock Object A datablock is an addressable portion of a device. The Datablock Object contains the properties and methods that manage the behavior of a datablock. Datablocks in the Server’s local memory correspond to data areas in the Common Memory DLL. When you add new datablocks to the 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 Server to other applications.
4. I/O DLL
Provides functions for sending and receiving data to and from the process hardware.
5. Common Memory DLL
Builds the 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. OPC Server DLL
Accesses configuration data through the Server’s OLE Interfaces and reads or writes data through the NIO DLL. The OPC Server DLL is a fully compliant OLE for Process Control in-process v1.0a server.
10. Applications
Communicates with the I/O driver through the NIO DLL. Because the NIO DLL accesses the Common Memory DLL directly, reading data from and writing data to SCADA applications is fast and efficient.
11. OPC Client Applications
Communicates with the I/O driver through the OPC Server DLL. Because the OPC Server DLL communicates with the NIO DLL, OPC Client applications can take advantage of the high-performance read/write capability that the NIO DLL provides.
12. 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++.
13. Process Hardware
Any type of I/O device that controls a process.