TM_1s_FB

1s间隔的定时器(0至32767s)

此定时器以1s为单位用作接通延迟定时器。如果功能块的start触点处于ON状态,将启动预置时间SV(设置值)。当经过此时间时,定时器触点T打开。

参数

输入

start (BOOL)

启动触点

每次检测到上升沿时,设置值SV被复制到经过值EV,且定时器启动

SV (INT, WORD)

设置值

定义的接通延迟定时器(0至32767s)

输出

T (BOOL)

定时器触点

当经过在SV中定义的时间时设置,这意味着当EV变为0时

EV (INT, WORD)

经过值

当定时器正在运行时,每1s减去1的计数值

通过从编程编辑器写入变量,可以在计数操作过程中改变数值。

标注

  • 可用定时器的数量受限并取决于系统寄存器5和6中的设置。

  • 对于定时器功能块,编译器将NUM*地址自动分配到每个定时器实例。地址从最大可能的地址开始向下计数进行分配。

时间图

  1.  (1) 下载PROG模式
  2.  (2) RUN模式

示例

POU头

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

	VAR
		Alarm_control: TM_1s_FB;
		Start_contact: BOOL:=FALSE;
		Alarm_Relay_1: BOOL:=FALSE;
		Alarm_Relay_2: BOOL:=FALSE;
	END_VAR

此例使用变量。也可以使用常量用于输入变量。

POU本体

只要变量Start_contact变为TRUE,定时器Alarm_control就将启动。定时器的变量EV设置为SV的值。只要Start_contactTRUE,每1s就从EV中减去值1s。当EV达到值0时(时间类型TM_1s_FB的情况下SV = 10的10秒后),变量Alarm_Relay_2变为TRUE

只要定时器的变量EV的值小于或等于5(5s后)且EV不等于0,Alarm_Relay_1就被设置为TRUE

LD本体

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 8 ;
        NETWORK_BODY
B(B_VARIN,,Start_contact,8,3,10,5,);
B(B_VARIN,,10,8,4,10,6,);
B(B_VAROUT,,Alarm_Relay_2,18,3,20,5,);
B(B_FB,TM_1s_FB,Alarm_control,10,2,18,6,,?Bstart?BSV?AT?AEV);
L(1,0,1,8);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 8 ;
        NETWORK_BODY
B(B_F,@LE-2!,Instance,11,0,16,3,,?D?D?C);
B(B_VARIN,,Alarm_control.EV,9,0,11,2,);
B(B_VARIN,,5,9,1,11,3,);
B(B_F,@NE!,Instance,11,5,16,8,,?D?D?C);
B(B_VARIN,,0,9,6,11,8,);
B(B_VARIN,,Alarm_control.EV,9,5,11,7,);
B(B_F,@AND-2!,Instance,20,2,25,5,,?D?D?C);
B(B_VAROUT,,Alarm_Relay_1,25,2,27,4,);
L(16,1,17,1);
L(17,1,17,3);
L(17,3,20,3);
L(17,4,20,4);
L(17,4,17,6);
L(16,6,17,6);
L(1,0,1,8);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST本体

Alarm_Control( start:= Start_Contact ,
        SV:= 10,
        T=> Alarm_Relay_2 ,
        EV=> Alarm_Control.EV );
(*The ON-delay time is 10s*)
Alarm_Relay_1:= Alarm_Control.EV <= 5 & Alarm_Control.EV <> 0;
(*Alarm_Relay_1 is set to TRUE after 5s*)

IL本体

如果要调用指令列表中的功能块,请输入以下内容:

CAL

Alarm_control (start:=Start_contact,

SV:= 10 ,

T:= Alarm_Relay_2)

LD

Alarm_control.EV

LE

5

AND(

Alarm_control.EV

NE

0

)

ST

Alarm_Relay_1

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