リセット/セット
ファンクションブロックRS(リセット/セット)で、出力をOFF/ONできます。
入力
セット
RESETがOFFのとき、S信号の立ち上がりエッジで出力Q1がONになります。
リセット
R1信号の立ち上がりエッジで、出力Q1がOFFになります。
出力
Sで立ち上がりエッジが検出され、R1がセットされていない場合、ONになります。
R1で立ち上がりエッジが検出されると、OFFになります。
両方の入力の立ち上がりエッジが検出されると、OFFになります。
POUヘッダには、このプログラムで使用するすべての入力変数と出力変数を宣言します。 POUヘッダは全プログラム言語で使用できます。
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
setがON(TRUE)になると、signal_outputがONになります。resetだけがONになると、signal_outputはreset (FALSE)になります。setとresetの両方がONになると、signal_outputはreset(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;