Applies To:
  • CitectSCADA 1.00, 1.01, 1.10, 1.11, 1.20, 2.00, 2.01

Due to limitation of the Citect for DOS network protocol, the Citect for DOS support in the I/O Server will not correctly implement all PLC data types. The limitations of the Citect for DOS network protocol means that the Citect for Windows I/O Server cannot calculate the size of a read request. The size of the read request is included into the Citect for Windows network protocol.

The request size is used when Citect must copy the data from one buffer to another buffer. As Citect for Windows does not know the size of the data, it makes the following assumption: If the data type is digital then each PLC data address is 1 bit wide, otherwise it is 16 bits wide. This is correct in 90% of the time. However it will be incorrect in the following cases:

1). If you are reading packed digital variables (called remapping in Citect for Windows) from register memory. In this case, the data type is digital but the address is a register.

2). If you are reading any PLC data type that is 32 bits wide (i.e address 1 in the PLC contains a 32 bit integer or a real number and address 2 in the PLC contains another 32 bit number). This does not apply if a 32 bit number is stored in two consecutive 16 bit addresses.

Under these conditions, the data returned will contain garbage values or may cause unpredictable results on the Citect for Windows I/O Server.

The Citect for DOS support in the Citect for Windows I/O Server is provided as a temporary bridge between the DOS and Windows versions of Citect during an upgrade process. It has not been designed to run as a fully functional system, and therefore it does have a few limitations. To work around these limitations you must remove any packed variables (remapped variables) and 32 bit PLC variables from the Citect for DOS databases.