ErikSN

Detect value change in data block even if value is same as before

4 posts in this topic

Hi,

I was wondering if it's possible to detect a changed/updated value in a data block even if the value remains the same as before.

The reason I ask is because we have a SCADA system providing a setpoint for a temperature every x minutes. The value of the setpoint can remain unchanged for hours even days.

However we still want the PLC to be able to detect wheather it's setpoint is updated every x minutes or not.

Any good solutions?

Thanks!

Share this post


Link to post
Share on other sites

You want to confirm that the setpoint is valid, even if it doesn't change? 

 

I would set up a "heartbeat" between the SCADA and PLC.  In other words, the PLC turns a bit on, then the SCADA turns it off after a certain time (a few seconds), then the PLC turns it back on.  If either system detects that the bit hasn't changed state after a timeout period, it knows that it isn't talking and needs to respond appropriately.

Another option if you can't add a heartbeat bit is to have the DB location that the SCADA writes become an intermediate step with the PLC using a different location for its actual work.  If the SCADA is set up to constantly write the setpoint to that DB, the PLC can periodically clear the DB location and then see that the SCADA re-writes it.  Essentially making a heartbeat out of the setpoint.  If the SCADA only writes the setpoint when it changes, I think you'll have to have a heartbeat bit or some other way to confirm that the PLC and SCADA are communicating.

Share this post


Link to post
Share on other sites

Joe E.

Thanks! Those seem like good options to confirm that comm between PLC and SCADA are up. Will look into it.

Share this post


Link to post
Share on other sites

How are you reading the data? Is it written directly to a memory/data block by the temperature controller? Or are you using a READ instruction of some kind? If the latter, it seems easy enough to timestamp the data every time it is read and transferred to the data block.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now