PowerSCADA Expert - A way to fix Gateway Exceptions 0xB for Modbus Slave devices behind EGX100
Frequent disconnection for MODNET11 type IODevices behind an EGX100 Gateway.
Project was a DataCenter in UK.
Devices are DAC - Dry Air Cooler.
PSE 7.40 SR1 + HFs and Drivers used are the latest to date.
Glossary: PSE = PowerSCADA Expert; SR1 = Service Release 1; HFs = HotFixes
Several attempts to tune the Timeout, Retries and Driver Error Masking (Citect's KB - Q5923 Driver Error 00008203 (0x0000200b) with MODNET driver when connecting via a gateway) on PSE side, Response Time on serial port of EGX100 side, were not helping at all.
The EGX100 was replying with exception responses as if DAC devices were offline: GATEWAY_TARGET_DEVICE_FAILED_TO_RESPOND_EXCEPTION = 0xB
It was happening several times during runtime (I cannot say the period), but the response was not always neither to the same registers request, nor persisting more than 1 response/frame, meaning that the next Modbus request from PSE was answered properly.
It looked like a problematic Modbus Slave device.
The only efficient way to fix it was by replacing the IODevice Protocol MODNET with PwrModbus and enabling RetryException in [PWRMODBUS] section of citect.ini:
RetryException = 1
Note: RetryException = 0 by default, meaning that retries on exceptions are disabled. More info about this parameter (like to what exception codes it retries) are found in PwrModbus Driver's help and the same in PowerSCADA Expert System Integrators Manual.
The number of default retries for PwrModbus driver is 3; this is handled by "[PWRMODBUS]retry" parameter.
I reduced this to [PWRMODBUS]retry = 2 and in this case and it worked, however it is something that can be tuned.
This RetryException is a feature that PwrModbus driver has, while MODNET hasn't (among others).
Created on 3rd AUG 2015 by
Global Expert Technical Support Engineer - Support Prime PSE / EGX