I have an 8864 logger communicating Modbus with 2 devices. I don't know Modbus at all. However, my file appears to read/write from one device and then go on to the next. This doesn't always happen to the same device, either. When I have the issue with data values being zeros, I can unplug the Ethernet connection for a minute and plug it back in. This usually allows communication to commence. Sometimes it lasts for a minute or two and other times it can be for hours or days (weekends). It only happens once every couple of months. I think I should add that it goes Ethernet to fiber optic to Ethernet and back Ethernet to fiber optic to Ethernet again.
Does the Modbus-read value actually go to zero?
Usually comm failure (over a serial link) results in stale (last valid point, never updated) data in the master that 'straight-lines' when charted or graphed.
Data values that are Zero is typically the result of initialization or re-initialization on power-up, particularly on the slave/server side.
I don't know enough details of TCP execution to pinpoint a fault that would rectify by cable removal and replacement.
The system that the values are read from has good values when I export the file. I then have to use the exported file to fill in the zero values in my DAHS. The only way I can explain this is to say the communication gets into a traffic jam. When I unplug the cable, it seems to clear the traffic jam and allows the good values to begin to flow again.