How I/O Drivers Work

<< 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 Server - Drivers option.

Access to Driver Manager

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 Filter and then typing a filter for a column.

Driver Manager

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

Was this page useful?