The TagSetClockFB Function Block asks a PLC Device Tag with RTC to synchronize the real time clock of a PLC Device.
The function block synchronizes the real time clock by sending a SetClock Tag Command to the PLC Device tag. The function block provides status information to:
Attempting to synchronize the clock of a PLC will fail if:
The TagSetClockFB Function Block is intended for use in a Program Tag that runs on the Fernhill SCADA Server. A Program Tag uses a continuous execution model, where the program code runs at a fixed interval. A program uses the function block to sample the state of the tag command as it executes.
There is no equivalent TagSetClockFB Function for use in an Operator Action.
The TagSetClockFB Function Block has this syntax:
TagSetClockFB( REQ:=Expression, TAGNAME:=Expression, BUSY=>Variable-Reference, DONE=>Variable-Reference, ERROR=>Variable-Reference, ERRORMSG=>Variable-Reference );
Note: All parameters are optional.
The TagSetClockFB Function Block has these parameters:
Parameter | Type | Direction | Description |
---|---|---|---|
REQ | BOOL R_EDGE | Input | A rising edge starts the SetClock Tag Command. |
TAGNAME | STRING | Input | The name of the tag to send the SetClock Tag Command to. This can be an absolute tag name, or a relative tag name. Relative tag names are resolved relative to the full name of the host program. |
BUSY | BOOL | Output | Set to TRUE while the SetClock Tag Command is in progress. |
DONE | BOOL | Output | Set to TRUE for 1 execution after the SetClock Tag Command has completed. |
ERROR | BOOL | Output | Set to TRUE if the SetClock Tag Command failed. |
ERRORMSG | WSTRING | Output | If ERROR is TRUE, the reason why the SetClock Tag Command failed. |
Once the SetClock Tag Command begins, additional requests from the input signal REQ are ignored until the tag command completes.
These timing diagrams show the relationship of the REQ, BUSY, DONE, and ERROR signals processing two requests. The first request completes with an error, the second request completes normally:
+--------+ +-+ +------+ REQ | | | | | | --+ +-----+ +-+ +------ +------+ +------+ BUSY | | | | --+ +-------+ +---------- ++ ++ DONE || || ---------++-------------++--------- +-------+ ERROR | | ---------+ +-----------------
The BUSY signal is TRUE while the tag command is in progress. The DONE signal is TRUE for 1 execution after the completion of the tag command.
To learn about the SetClock Tag Command.
To learn about other tag command function blocks.
To learn about the different types of expression to use as function parameters.
To learn about the different types supported by Fernhill SCADA.
To learn about other IEC 61131-3 Common Elements.
For the meaning of terms used in Fernhill SCADA.