Suggestions for implementing a watchdog

Hey all

Our client has got a system where the PLC is connected to a serial adapter which travels a long distance before going into a serial to Ethernet adapter and then into our Ignition system. Our device connection references this Ethernet Adapter.

The system has been working fine but we’ve found a major issue in alarming, if the serial connection goes down Ignitions device connection doesn’t detect an issue as it’s checking the connection to this Ethernet adapter.

I’ve put in a watchdog timer on the PLC, and have done so for the many other devices, but I’m wondering if anyone has made a simple watchdog detection script.

Currently I have a script that runs every 10 seconds, checks for tags called ‘Watchdog’, and if its “last changed” is longer than 30 seconds ago it modifies the corresponding comm fail tag.

Only issue, is that not all of our sites will have this watchdog tag, sometimes the tags are in different folder locations etc. So the script is becoming unmaintainable if I hand this over to someone else, every assumption in my code will have kind of exception. Other sites use a much less reliable system, so even connected this watchdog might take too long to update, and trip our alarms. Or they disconnect but the tags stay good quality, we’re using DNP3 so this trips up the quality sometimes.

Has anyone done a simpler mthod, I wish there was an tag event on tag not changing but I understand that isn’t happening.

Do all the PLCs have real-time clocks? If you were able to monitor the “seconds” count you should be able to generate an alarm if this doesn’t change for a time. There was a question on this recently, I think.

Problem I’m always having is we almost exclusively use DNP3 on this project so a lot of this additional data that comes with the Logix drivers etc. we don’t get. So I’m forced to just use tags over OPC, like a specific watchdog tag