<< Click to Display Table of Contents >>
How I/O Drivers Work |
An E3IoServer is an Elipse E3 module responsible for communicating with a device. It is inside an I/O Server process that a Driver's DLL is loaded and communication with that device is then performed.
I/O Tags enable users to read or write a set of values, by using an I/O Driver where they are inserted. Users can also use I/O Blocks to read more than one variable simultaneously. To access each I/O Block value, use an I/O Block Element, which can be inserted in that object. These objects are discussed in the next topics.
By default, Elipse E3 creates an I/O Server for each I/O Driver at run time. Based on each I/O Tag's scan time, its Scan property, an I/O Driver periodically requests each I/O Tag value. Every time an I/O Tag value or quality is modified, its value is then reported to an I/O Driver.
Each variable's cycle time check is performed sequentially. In case some variable's cycle time expires, an I/O Server then keeps asking for its value, moving on to the next variable until the whole spreadsheet is complete, and then it returns to the beginning for a new scan.
Users can reserve a smaller cycle time for variables that need to be updated more quickly, and a larger cycle time for variables whose updating priorities are low. It is important to notice, however, that communication performance depends on a lot of factors, including device type, communication interface type in use, baud rate, and error rate, among others.
Whenever Elipse E3 sends a request to set values to one or more variables, this request has a higher execution priority, relative to an I/O Tag scan.
In case of an I/O Server failure, Elipse E3 automatically restarts this module, to get back to work. On the other hand, an I/O Server stops working in case there is no E3Run, Main or Standby, to receive its data.
When using the ShareServer property, users can share the same I/O Server among several I/O Drivers. The first I/O Driver executing is responsible for starting communication procedures, such as opening a serial port or initializing a communication interface. The next shared I/O Drivers then use the same I/O Server opened by the first one, which allows sharing communication interfaces used by an I/O Driver.
This can be an advantage, because many communication devices, such as modems, serial ports, and other interfaces, allow just one connection, preventing simultaneous usage by more than one I/O Driver. When sharing I/O Drivers, users can reuse the same connection for more than one object. Users must notice that settings for shared I/O Drivers must be the same, for a proper working of I/O Driver sharing.
When a Domain is executing, users have access to I/O Driver's execution interface, named Driver Manager, on E3 Admin's contextual menu on Windows Notification Area, in the Server - Drivers option.
Access to Driver Manager
A Driver Manager allows users to view all I/O Drivers in execution, by displaying their properties. On this window users can sort I/O Drivers by any column, by clicking a desired column's name. Users can also filter values on columns, except for Read errors and Write errors columns, by clicking and then typing a filter for a column.
Driver Manager
The available options on this window are described on the next table.
Available options for Driver Manager window
Option |
Description |
---|---|
Name |
Informs a Driver's name |
Object(s) |
Informs an I/O Driver's name linked to a Driver |
Read errors |
Displays the total number of an I/O Driver's readings, the number of reading errors, and a percentage of errors relative to the total number of readings |
Write errors |
Displays the total number of an I/O Driver writings, the number of writing errors, and a percentage of errors relative to the total number of writings |
Process |
Displays a process ID for this I/O Server in the operating system |
Status |
Displays the current Driver status (configured, starting, executing, finishing, finished, or in error). If a Driver is in error, this column displays an error description |
Shared |
Displays YES or NO, informing whether a Driver is shared or not |
Log |
Displays a log status, enabled or disabled |
Path |
Informs a Driver's path in the operating system |
Enable log |
Enables a Driver's log at run time, without reconfiguring this application. Users can interrupt this recording procedure by using the same option |
Refresh |
Forces an update on displayed data |