XML Pusher Device Driver


Overview

If XML Pusher is supplied without the EnvidasFW data acquisition and control application, the XML Pusher program requires a custom driver to use when communicating with other serial devices in the station.
The device communication portion of XML Pusher is configured through database tables contained in the EnvidasFW database. The user needs only a browser program to set up the table entries that define the operation of the driver.

The Odessa DSM 3260 data logger is an example of a device that would require a driver. The driver, developed by DR DAS communicates with the DSM to obtain data that is then stored locally in MSDE data tables hosted on the same station PC as that running the XML Pusher application.

Pass Through

Besides supporting communication with the device on a scheduled data transfer basis, a driver can support pass through communications. A remote user can connect to the station PC via a sockets program such as Telnet. XMLPusher is listening on a socket set by the user through the configuration tables. The Telnet Command Open 123.123.123.123 19091 would connect to a XML Pusher host PC at IP address 123.123.123.123 listening on Port 19091. Telnet provides a terminal window from which the user can then send commands to an attached serial devcie such as a DSM 3260.

Configuration

Click Driver on the main menu of the EFWWebConfig program.


Figure 1 Main Menu

 

Click the driver table you want to configure.


Figure 1 Select Driver Tables to Configure

 

XML Pusher Configuration

Configuration of the driver(s) is via entry of settings in the driver configuration Tables. The Driver Configuration Tables consist of 2 Tables as listed below:

Table

Description

Fields

TB_COMMCONFIG

Edit Driver Communications

ID system assigned index

Enabled Yes/No Bit

Device Type Select the device from the combo box. Note that Passthrough is considered a device.

Description Descriptive text as desired by the user.

Serial or IP Enter 0 if Serial 1 if TCPIP. Passthrough is TCPIP

Serial Port # Enter 1 for Comm 1 etc. If the Device Type uses the IP port like Passthrough does, not Serial Port entry is required.

Baud Rate Enter a single integer code. 1 = 300, 2 = 600, 3 = 1200, 4 = 2400, 5 = 4800, 6 = 9600.

Parity Enter a single integer code. 0 = none, 1 = odd, 2 = even.

Data Bits Enter a single integer code. 4 = 8 data bits.

Stop Bits Enter a single integer code. 0 = 1 stop bit.

IP Address IP Address for TCP/IP drivers such as an Ethernet PLC.

IP Port TCP/IP Port used for Passthrough mode. This is set for the application and must match requirements for router redirections and firewall configurations. It will not need to change when the IP address changes.

Poll Time Time interval in milliseconds at which the driver checks to determine if the device needs to be polled.

Time Out Time period in milliseconds at which the DSM driver times out waiting for a response from the device.

Additional Settings This field supports all other parameters needed to configure communications and data processing for a device. Parameters are separated by a ",".
For the DSM device the following parameters are used: STATION=1, INTERCHARDELAY=200, EOMDELAY=2000, PASSTHROUGHTIMEOUT=120, ILLEGALCHARS=10

If this is the only device the Station value should be 1. InterCharacterDelay defines the time in milliseconds between character transmission. EOMDelay is the time in millisecs to wait for additional charcters to be received from the DSM. This ensures the response is complete. PassThroughTimeOut is the time in seconds to wait after the last character has been received from a remote user before the user is automatically disconnected. IllegalChars are the ASCII Codes for characters that when received at the TCP/IP port are not passed through to the device.

TB_SCHEDULER

Device Polling Schedule

TaskType_ID integer: Type 1 are XMLPushers tasks. These IDs are automatically assigned by code. Type 2 is the DSM Poll Task.

ScheduleCode integer: Set = 1

ScheduleInterval integer: 60 indicated poll every 60 minutes synchronized to the clock.

PollOffset - The delay in minutes after the Schedule interval to wait before polling the device. For a device being polled every 60 minutes an Offset of 1 would mean the polling will occur at 1 minute after each hour.

Enabled- Boolean indication whether station is active

LastPolled This date time is inserted by a device driver when it successfully enters data into the EnvidasFW database.

RetryWait The time in seconds that the driver should wait before retrying a command that failed.

Shutdown The time in minutes that the driver should wait before again trying communications if the maimum reties has already occurred.