Author: administrator (, Topic: Documentation
Published on Sep 02, 2004 (5798 peten)

Article describing shortly the purpose, possibilities and conditions of use, aplication architecture and basic features.


VDDSAIA is a communication driver (I/O Server, virtual device driver) intended for data exchange between a SAIA-Burgess PCD on one hand and applications running on a PC with the Microsoft Windows NT 4.0, 2000, or XP operating system on the other hand.


VDDSAIA allows other applications to monitor values and write into data points (inputs, outputs, registers, etc.) on one or several SAIA-Burgess PCDs using the DDE, NetDDE, or SuiteLink protocols. VDDSAIA maintains permanent connections with the monitored PCDs using "communication channels", which may be, for instance, RS-232 or RS-485 serial lines or an Ethernet network. The channels roughly correspond to the computer input/output ports.

For example, multiple PCDs can communicate with the application over a single serial port (COM) and a serial line connected to it. The application maintains a separate connection with each of such PCDs, but all the connections share one communication channel.

VDDSAIA keeps an always sorted list of data points and updates it based on occurring and disappearing requests from user applications (such as Wonderware Intouch, Microsoft Excel, etc.) that access VDDSAIA using the DDE, NetDDE, or SuiteLink protocol. VDDSAIA periodically queries the connected PCDs about the values of requested data points. Data points may be categorized into different topics at the update rate as needed. To optimize traffic on slow lines, the application combines the requested data points into "blocks." A block consists of several successive data points of the same type. Parameters for combining data points into blocks can be adjusted.

The basic updating interval is one of the adjustable parameters of each instance of VDDSAIA. It is then possible to specify the "priority" of each topic; the priority indicates the updating period in multiples of updating cycles. The limit for the overall speed of updating consists in the throughput rate of communication channels and the computing power of the PC and PCD. This means that the fewer the data points that are updated, the higher the update rate that can be achieved.


Due to the external communication libraries, VDDSAIA is a single-thread application, which imposes the following restriction. If multiple PCDs are connected over several serial lines to the PC on which VDDSAIA should run and the PCDs are managed from a single instance of VDDSAIA, it is possible that at a higher update rate the individual channels (serial lines) will restrict one another. While the application is waiting for a response from a PCD on one channel, the other communication channels will be unused. The described restriction can be easily eliminated by creating and running a separate instance of VDDSAIA for each serial line. VDDSAIA is fully adapted to this solution. ягода годжи

The required number of instances can be easily prepared by creating the needed number of copies of the file VddSaia.exe with different names. The name of an instance is also the name of the application in communication over DDE, NetDDE, or SuiteLink, and can be also seen in the head of the main window (in brackets) and in the About application window. In addition, settings are stored in registers under the name of each instance, so each instance has its own settings (except for the language and registration code, which are shared by all instances) and, naturally, its own configuration of connections and topics. Each application instance can only run once in the system; multiple concurrent runs are automatically prevented.