Questo blocco funzione su attivazione del comando di set S1 attiva l’uscita Q1 che rimane attiva anche quando il comando viene disattivato. Per disattivare l’uscita occorre attivare il comando di reset R.
Il comando di set è prioritario sul comando di reset.
Descrizione
S1 (BOOL) Set, su attivazione del segnale, viene attivata l’uscita Q1 che rimane attiva anche quando il comando viene disattivato. Il comando è prioritario sul comando di reset.
R (BOOL) Reset, su attivazione del segnale, viene disattivata l’uscita Q1.
Q1 (BOOL) Uscita, si attiva e disattiva in funzione dei comandi di set e reset.

Esempi
Come utilizzare gli esempi.
Un semplice esempio permette di verificare il funzionamento del blocco funzione, attivando il comando Set si attiva SFlag che rimane attiva anche se si disattiva l’ingresso di set. Per disattivarla occorre attivare Reset.
Nel programma in ladder esistono gli operandi (S) e (R) che hanno la stessa funzionalità di questo blocco funzione, ho quindi definito un array di variabili SFlag per comparare il funzionamento. Da notare che avendo inserito il ramo con l’operando (S) dopo il comando di Reset si è data priorità al comando di Set.
LogicLab (Ptp115, LD_SR)
PROGRAM LD_SR
VAR
Set : BOOL; (* Set command *)
Reset : BOOL; (* Reset command *)
FFlop : SR; * Flip/Flop *)
SFlag : ARRAY[ 0..1 ] OF BOOL; (* Status flag *)
END_VAR

LogicLab (Ptp115, IL_SR)
PROGRAM IL_SR
VAR
Set : BOOL; (* Set command *)
Reset : BOOL; (* Reset command *)
FFlop : SR; * Flip/Flop *)
SFlag : BOOL; (* Status flag *)
END_VAR
(* ************************************************************************** *)
(* PROGRAM "IL_SR" *)
(* ************************************************************************** *)
(* This program shows the use of SR function block. *)
(* ------------------------------------------------------------------------- *)
(* ---------------------------------------------------------------------- *)
(* FLIP/FLOP *)
(* ---------------------------------------------------------------------- *)
LD Set (* Set command *)
ST FFlop.S1
LD Reset (* Reset command *)
ST FFlop.R
CAL FFlop (* Call the function block *)
LD FFlop.Q1
ST SFlag
(* [End of file] *)
LogicLab (Ptp115, ST_SR)
PROGRAM ST_SR
VAR
Set : BOOL; (* Set command *)
Reset : BOOL; (* Reset command *)
FFlop : SR; * Flip/Flop *)
SFlag : BOOL; (* Status flag *)
END_VAR
// *****************************************************************************
// PROGRAM "ST_SR"
// *****************************************************************************
// This program shows the use of SR function block.
// -----------------------------------------------------------------------------
// -------------------------------------------------------------------------
// FLIP/FLOP
// -------------------------------------------------------------------------
FFlop(S1:=Set, R:=Reset); //Call the function block
SFlag:=FFlop.Q1; //Status flag
// [End of file]