Function block - Generate a signal defined in a resource
IN : BOOL Triggering command
ID :
DINT ID of the
signal resource, provided by SigID
function
RST : BOOL Reset command
TM : TIME Minimum duration in
between two changes of the output
Q : BOOL TRUE when the signal is finished
OUT :
REAL
Generated signal
ET : TIME Elapsed time
The "ID" argument is the identifier of the "signal" resource. Use the SigID function to get this value.
The "IN" argument is used as a "Play / Pause" command to play the signal. The signal is not reset to the beginning when IN becomes FALSE. Instead, use the "RST" input that resets the signal and forces the OUT output to 0.
The "TM" input specifies the minimum amount of time in between two changes of the output signal. This parameter is ignored if less than the cycle scan time.
This function block includes its own timer. Alternatively, you can use the SigScale function if you want to trigger the signal using a specific timer.
(* MySig is a declared instance of SIGPLAY
function block *)
MySig (II, ID, RST, TM);
Q := MySig.Q;
OUT := MySig.OUT;
ET := MySig.ET;
(* MySig is a declared
instance of SIGPLAY function block *)
Op1: CAL MySig (II, ID, RST, TM)
LD MySig.Q
ST Q
LD MySig.OUT
ST OUT
LD MySig.ET
ST ET
SigScale SigID Signal resources