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.
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 indexEnabled – Yes/No BitDevice 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 TCPIPSerial 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 ",".
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 = 1ScheduleInterval – 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. |