SFB 3 "TP" 生成一个脉冲
SFB 3 "TP" 生成了长度为 PT的脉冲。定时器只在 STARTUP 和RUN模式下运行。
输入IN 的信号上升沿启动脉冲。在时间 PT内输出 Q 将保持置位状态,无论输入信
号是否有变化(换言之,即使 IN输入在时间 PT用完前从 0 变回 1) 。ET输出提供输
出Q 处于置位状态的时间。ET输出的最大值是 PT输入的值。输出 ET在输入 IN变
为0 时复位,但复位不会在时间 PT用完前进行。
操作系统会在冷启动期间重置 SFB 3 "TP" 的实例。如果希望在暖启动后初始化此
SFB 的实例,必须在 OB100中使用 PT = 0 ms 调用 SFB 3 。如果此 SFB 的实例位
于另一个块中,可以,例如通过初始化更高级别的块,重置这些实例。
时序图:
使用SFB 4 "TON" 生成一个接通延迟
SFB 4 "TON" 使信号上升沿延迟时间 PT。定时器只在 STARTUP 和RUN模式下运
行。
IN输入的上升沿会导致时间 PT用完后输出 Q 出现上升沿。随后 Q 将保持置位状
态,直到 IN输入再次变为 0。如果 IN 输入在时间 PT用完前变为 0,输出 Q 将保持
其设置0 不变。
ET输出提供 IN 输入的上一上升沿后过去的时间。其最大值为 PT输入的值。IN 输
入变为0 时将复位 ET。
操作系统会在冷启动期间重置 SFB 4 "TON" 的实例。如果希望在暖启动后初始化此
SFB 的实例,必须在 OB100中使用 PT = 0 ms 调用 SFB 4 。如果此 SFB 的实例位
于另一个块中,可以,例如通过初始化更高级别的块,重置这些实例。
例子 : 作一个延时报警的功能块FB700
FUNCTION_BLOCK FB700
VAR_INPUT 输入点
EN1:BOOL; 启动条件
KT1:BOOL; 检测条件
END_VAR
VAR_output
stop_err:BOOL;//输出点
END_VAR
VAR_TEMP 临时变量没有使用
END_VAR
VAR 静态变量
m_1:BOOL;
m_2:BOOL;
TON_1 :TON;
TP_1: tp; // time
END_VAR
TON_1(IN := EN1 AND KT1, PT := T#50s); 故障报警延时发出
m_1:=TON_1.Q;
TP_1(IN := m_1, PT := T#50s);
stop_err:= EN1 AND KT1 AND TP_1.Q; 有故障后持续输出50s的脉冲
END_FUNCTION_BLOCK FB块结束
责任编辑:xj
原文标题:通过 'TP '和'TON'做一个延时报警的功能块-w
文章出处:【微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。
全部0条评论
快来发表一下你的评论吧 !