Reset/set
El bloque de funciones RS (reset/set) proporciona una salida tanto reset como set.
Entrada
Set
La salida Q1 se activa en cada flanco de subida de S siempre que RESET se mantenga a OFF.
Reset
La salida Q1 pasa a OFF en cada flanco de subida de R1.
Salida
pasa a ON si se detecta el flanco de subida en S y si R1 no se ha activado.
pasa a OFF si se detecta el flanco de subida en R1.
pasa a OFF si se detecta el flanco de subida en ambas entradas.
Todas las variables de entrada y de salida utilizadas para la programación de esta función han sido declaradas en la Cabecera de la POU. Se utiliza la misma cabecera de la POU para todos los lenguajes de programación.
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
Si set está a TRUE, se activa signal_output. Si solo se activa reset (reset=TRUE), se resetea la señal signal_output (estado = FALSE). Si se activan tanto set y reset, signal_output pasa a FALSE (reset).
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;