Applies To:
  • CitectSCADA 3.00

The following options can be used to control the blocked writes feature. You should only have to disable this feature if it is incompatible with a particular PLC or I/O Device. Citect will perform a blocked write if that feature is supported by the protocol. However the current protocol may be communication with older PLC which may not support that particular write mode. So when a blocked write occurs you may get a hardware error from these older PLCs.  

There are two parameters under the [general] section to control the blocked writes. The NotOptimiseWrites parameter will allow you to disable each different type from being blocked written. For example [general]NotOptimizeWrites=0x1FF will disable all write optimisation while [general]NotOptimizeWrites=0x004 will disable just for REALs. See list below for all bit positions:

The parameter [general]NotOptimiseWritesChanges controls if the I/O server will optimise out the same writes to the same addresses. In Citect for Windows 1.xx and 2.xx if you had more than one pending write to the same address the I/O Server would write the first value then the second value. In version 3.xx if the I/O Server sees 2 or more writes to the same address it will throw away the extra writes and just write the final value. This is to stop over loading of writes to the PLCs. This may be incompatible with the way you project works. For example you may want Citect to write to a variable one value and the immediate after write another value. You may disable this feature via this parameter. For example general]NotOptimizeWritesChanges=0x1FF will disable all write change optimisation.

Below is the full list of the bitmasks, each bit position controlling the options for that data type:

Bit Number Data Type
0 Digital
1 Int
2 Real
4 Long
5 LongBCD
6 LongReal (Not used)
7 String
8 Byte