I have Freezing problem at Telvent HU-AF.

I am using telvent RTU and Power Scada a Project. But between RTU with Power Scada is disconnecting communication at different time (for example 3 day or 1 week or 3 week). Communication protocol is modbus tcp/ip. RTU have two port; port1 for server 1, port2 for server2. 

  • This is how I interpret the wireshark logs:

    # Server 1:

    Communication looks OK; all Modbus requests get a response and TCP-connection stays up

    # Server 2:

    1. TCP communication is set up from Citect side; lines 2, 3 and 4 show normal SYN, SYN/ACK, ACK handshake so RTU is able to have more than 1 TCP connection
    2. Citect sends a Modbus READ command and the RTU responds to that according to lines 5 to 8. I cannot see what kind of response though, it could also be an error message
    3. Citect does not send any further Modbus requests
    4. After 50 seconds of no TCP communication the RTU closes the TCP connection (lines 9 to 11 show FIN, ACK, RST/ACK); looks like normal time-out behaviour of the RTU
    5. Process repeats itself

    Conclusion:

    - Standby Citect server still tries to communicate to the RTU periodically. This could be the watchdog mechanism Stuart mentioned before. So, did you follow any of the recommendations that Olivier and Stuart have given yet? Are your IODevices in Exclusive mode and/or did you set the [IOServer]Watchdog=0 parameter on both servers while you performed the WireShark tests?

  • I sent record of wireshark to you, after I make to say of Olivier. Exclusive Mode On

  • OK, so if you made the screenshots after enabling Exclusive Mode, then it looks like the Watchdog mechanism is still trying to connect periodically from the standby machine.

    Please put the parameter that Stuart mentioned in the citect.ini files of both servers and restart them. After that your standby server should not connect to your RTU as long as the Primary server is healthy and connected.
  • Ok, I will try that you mentioned. And then I will share record of wireshark. Continue with Exclusive mode on?
  • Hi Adem,

    Yes, you can leave Exclusive Mode on.

    @ : I'm a bit confused about this Exlusive Mode now. I would have thought that enabling it would suppress the periodic Watchdog mechanism as well... Do you know the exact difference between Exclusive Mode on and off?
  • first image: server1 is working
    second image: to pass from server1 to server2
    third image: server1 stopped on the red line
    fourth image: server2 stopped on the red line.
  • You say about the first image that server1 is working here, but I don't see any Modbus telegrams. To me this indicates that server1 is not polling the RTU here, but only a TCP handshake is sent back and forth to keep the link alive.

    Can you explain the details about the timing and order of your actions in relation to the screenshots? What exactly was going on each time you captured these images? Were both servers running, or only server1 or server2? Could you see valid values in your Citect client? Does the Citect Kernel on both I/O servers show any problems/details for your I/O devices or drivers?

    Also, the fourth image shows that server2 stops polling (no more Modbus traffic from a certain point) and 10 seconds later the RTU closes the TCP channel. To me that indicates normal time-out behaviour from the RTU side.
    The question is why server2 stops polling. Is that because something you did? If at that point, for example, server1 comes online and takes over the communication, this is exactly what you want to happen, I would think.
  • Hi ,
    My understanding of Exclusive Mode, is that it will stop a Standby IO Device sending any requests to the Device, while the primary is active. I do not think this applies to WatchDog or heartbeat messages that the lower levels of the driver implements.
    , could you try the following paramters in the IOServer section:
    [IOServer]
    AlwaysCallStopUnit=1
    AlwaysCallStopChannel=1
    WatchdogPrimary=1 (Only on the Primary I/O Servers is this parameter set)
    Watchdog=0 (Only on the Standby I/O Servers is this parameter set)