Heart beat signal

KISS

1 PLC has a 10 sec timer, 1 plc resets it. If .dn then you have lost comms.
But that doesn't work if comms fail when the "reset" bit is high- it would get stuck and keep resetting the timer. A bit more complexity is needed.
 
I generally implement message heartbeats with a single rung of three instructions, monitoring an SINT:


Heartbeat.png


Originally posted here:
https://forum.inductiveautomation.com/t/plc-to-pc-server/49062/10?u=pturmel
 
Can you build and paste an example?
Shows two different two options, I would use the unlatch. If the timer times out, you lost comms. It will recover automatically. No need for a reset.

Edit, most programs have flashers, something you would use to blink lights, for example, so I use a flasher as the heartbeat to other systems.

1.png
 
Last edited:
Shows two different two options, I would use the unlatch. If the timer times out, you lost comms. It will recover automatically. No need for a reset.

Edit, most programs have flashers, something you would use to blink lights, for example, so I use a flasher as the heartbeat to other systems.
That's nice and clean. Only downside I see is that if the local PLC is doing a read for the heartbeat bit (instead of the remote PLC writing to it), it may still show a high heartbeat bit if the remote PLC was not in run mode. Unless I'm missing something.
 
Unless I'm missing something.

Sounds like you might. One, you should always do reads, a lot easier to troubleshoot. Two, if the remote PLC isn't running then the heartbeat will not transition, that's what heartbeat means. If you don't have a transition in the time the timer is set for, it will time out. A timeout is loss of comms.
 
Sounds like you might. One, you should always do reads, a lot easier to troubleshoot. Two, if the remote PLC isn't running then the heartbeat will not transition, that's what heartbeat means. If you don't have a transition in the time the timer is set for, it will time out. A timeout is loss of comms.
If the local PLC is reading the "heartbeat bit" and the remote PLC faults after setting its heartbeat bit, what keeps the local PLC from always reading a high bit from the faulted PLC and resetting the timer?

I agree about doing reads whenever possible.
 
what keeps the local PLC from always reading a high bit from the faulted PLC and resetting the timer?

I misspoke, I typically use a one shot, not the unlatch. It depends on how you manage the data, if you use a message, then it's probably best to use a one shot. But, by using a one shot, it doesn't matter if it's stuck high. It has to see transition.
 
The statement "PLC manufacturers don't have an inbuilt health status between networked PLC's in the config options." is not true.

Rockwell have connection status in controllogix platform in Prod/Cons. The older SLC use Message have message.ER bit, which in my opinion is sufficient.
Obviously, you can add additional check logic as needed.

I agree with this approach. It doesn't require additional logic. If the message instruction cannot connect, the error bit will go high, meaning communication has stopped for whatever reason. A timer is needed to trigger the msg, of course.
 

Similar Topics

Hi Guys, I have two Allen-Bradley systems here 1) 1769-L30ERMS 2)1768-L43S These both are safety plcs and its working at the moment. There are...
Replies
1
Views
1,489
I need to program a heart beat between a compact logix and a SLC 5/05 on one line and between 2 compact logix on another line. On the compact to...
Replies
1
Views
6,665
To All, Please help, I am new to Rockwell automation and normally use Siemens, I am trying to finish up a program and now need to use a "Heart...
Replies
9
Views
18,121
I am i need of some sample logic for a comms good / heatbeat between a compact logix plc and a contrologix plc. I also have a yaskawa drive...
Replies
25
Views
16,450
We have a new upgrade going on. We've replaced our existing resolvers with KUBLER encoders connected to CompactLogix 1769 HSC cards. We are not...
Replies
1
Views
2,935
Back
Top Bottom