How to setup a timer in DeltaV to be used as a watchdog to another DCS system

Hi All,

I have a need to create a timer in DeltaV that resets every hour. The timer is to be used as a watchdog for another DCS system (ABB System 6). How do I set up a timer/counter that resets every hour? Is there a way to use the number of seconds per hour as the output?

Background:

We are installing some new density meters onto one of our plant units. This unit is controlled by a DeltaV DCS. The density readings will be used in another plant area which is controlled by an ABB DCS system (System 6). Rather than hardwire the density meters to the ABB DCS, "senior management" have decided that we will hardwire the signals in to DeltaV, and then using our site data historian (OSIsoft PI) pass them to our ABB system. To ensure that the comms is ok between the 2 systems, we want to create a timer in DeltaV which we then read into PI and pass to ABB, where it will be read in a rate-of-change calculation and alarms generated. I'm dead against this method, I wanted hardwired connections from the density meters, but the job is being done on the cheap ("you engineers just don't understand the need to keep costs down...").

All help greatly appreciated

Thanks

Col

6 Replies

  • Use Condition block and SR flipflop.
    Link Condition Block out to Reset of SR Flip Flop.
    Make Set parameter of SR Flipflop default to 1. Make sure you make Set status to Good Non-Cascade.
    Inside Condition block browse SR flipflop Out parameter = 1;
    Set Time_Duration parameter of Condition block to the desired time (in seconds).

    After downloading the control module, the logic will start functioning.

    When Out of SR is 1, Elapsed time starts counting to Time_Duration value in Condition block, when Elapsed time reaches Time_Duration Condition block out will become 1 and Resets SR flipflop. As set is master, Out of SR flipflop again becomes 1 and Condition block Elapsed time starts counting from 0. You can use this Elapsed Time parameter as Time.

    Hope this can help you.
  • I think it is better to use Date and Time Event function block to check hour changing (minutes from 59 to 0)
    I hope to help you.
  • Attached is a link where you may download the WATCHDOG2.fhx file. It contains the WATCHDOG2 that I created.
    drive.google.com/open

    Following are the parameters
    #Input parameters
    WD_RESET = To reset the watchdog when it times out. Set this to true to reset the watchdog.
    COMM_OK = The communication is good when this parameter is true. It is false when communication is bad. This can be set by external
    parameter.
    WD_TIME_SEC = Time in seconds before watchdog times out. By default this is set to 3600 sec. (1 hour).


    #Output parameters
    WD_TIMED_OUT = It becomes true when the watchdog times out. This is when the COMM_OK parameter is false for 1 hour or more.

    Hope this helps.
  • Another option for the communication watchdog is for DeltaV to send out a heartbeat signal to System 6. This does not matter if there is an intermediate interface like the PI. Then System 6 returns(echo) it to DeltaV (does not matter if there is an intermediate interface). DeltaV then evaluates the echo from System 6.

    Following is a link to an FHX file that contains the heatbeat generator and the watchdog evaluator.
    drive.google.com/open

    Following are the modules
    SQUARE = this is the signal generator. Turns the OUT parameter to true/false for 5 seconds each.
    WATCHDOG4 = the watchdog evaluator. Watchdog times out when the OUT parameter from the SQUARE module does not change within 20 seconds.

    Due to lack of another system aside from DeltaV an external reference is used.

    Hope this helps
  • I have had trouble with watchdog bits strobing with communication updates and giving false positives of communication failures. I send system clock seconds in both directions. This produces a zero to sixty saw-toothed signal. This signal is passed to a DT block. When the signal from the other system is the same as coming out of the DT block, you know communications have stopped for the lenght of the DT block.
  • Hi Colin. Not sure if it would help you, but maybe you could remove PI from the equation using OPC mirror directly between Delta V and ABB system. Is that possible? It would avoid communications being lost due to PI unavailability/problems.