Reset/set
Le bloc fonction RS (reset/set) permet à la fois de réinitialiser et d’activer une sortie.
Entrée
Set
La sortie Q1 est activée à chaque front montant de S si RESET n’est pas activé.
Réinitialiser
La sortie Q1 est réinitialisée à chaque front montant de R1.
Sortie
Activée en front montant de S, si R1 n’est pas activé
Réinitialisée en front montant de R1
Réinitialisée lorsqu’un front montant est détecté aux deux entrées.
Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU. Le même en-tête de POU est utilisé pour tous les langages de programmation.
VAR
copy_name: RS;
set: BOOL:=FALSE;
(*output_value is set for each
rising edge at set_input,
if reset_input is not set*)
reset: BOOL:=FALSE;
(*output_value is reset for each
rising edge at reset_input*)
signal_output: BOOL:=FALSE;
END_VAR
Lorsque set est activé (état = TRUE), la sortie signal_output est activée. Lorsque reset est activé, signal_output est réinitialisée (état reset = FALSE). Lorsque set et reset sont activés, la sortie signal_output est réinitialisée (reset, état = FALSE).
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_FB,RS!,copy_name,9,1,14,5,,?BS?BR1?AQ1);
B(B_VAROUT,,signal_output,14,2,16,4,);
B(B_CONTACT,,set,3,1,5,3,);
B(B_CONTACT,,reset,3,3,5,5,);
L(1,2,3,2);
L(1,4,3,4);
L(1,0,1,5);
L(5,2,8,2);
L(8,2,8,3);
L(8,3,9,3);
L(5,4,9,4);
END_NETWORK_BODY
END_NET_WORK
END_BODY
copy_name( SET:= set, RESET:= reset);
signal_output:= signal_output;