SR

置位/复位

通过功能块SR(置位/复位)可以置位和复位输出。

参数

输入

S1 (BOOL)

置位

S1的每个上升沿置位输出Q1

R (BOOL)

复位(R)

为在R检测到的每个上升沿复位输出Q1,设置了S1时除外(参见时间图)

输出

Q1 (BOOL)

根据输入置位或复位

  • 如果在S1处检测到上升沿,则置位

  • 如果在R处检测到上升沿且如果未设置S1,则复位。

  • 如果在两个输入(S1R)处均检测到上升沿,则置位。

  • 初始化时,Q1始终为状态零(复位)。

时间图

示例

POU头

所有用于编程此函数的输入和输出变量已在POU头中声明。 所有编程语言使用相同的POU头。

	VAR
		copy_name: SR;
		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

LD本体

如果设置了set(状态=TRUE),signal_output将置位。如果仅设置了resetsignal_outputreset(状态=FALSE)。如果同时设置了setresetsignal_output将置位。

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_VAROUT,,signal_output,13,2,15,4,);
B(B_CONTACT,,set,3,1,5,3,);
B(B_CONTACT,,reset,3,3,5,5,);
B(B_FB,SR!,copy_name,8,1,13,5,,?BS1?BR?AQ1);
L(1,2,3,2);
L(1,4,3,4);
L(5,4,8,4);
L(5,2,5,3);
L(5,3,8,3);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST本体

copy_name( SET:= set, RESET:= reset);
        signal_output:= signal_output;

IL本体

最后更新日期: 此页面上的反馈松下热线