1、延时断开定时器(TOF)
该指令有两个输入参数和两个输出参数。
输入参数:
①IN:布尔型,用于启动定时器。
②PT:时间型,定时器的预设时间(Preset Time);
输出参数:
①Q:布尔型,定时器的输出值;
②ET:时间型,定时器当前走过的时间(Elapse Time);
定时器工作原理:
当参数IN的值从0(FALSE)变为1(TRUE)时定时器使能,此时Q值为0(FALSE);当IN值从1变为0(下降沿)定时器开始计时,同时Q从0变为1;当预设时间PT到达后,Q值从1变为0;若在计时过程中IN的值变为0,则Q的值变为0,ET时间变为0;
2、延时接通定时器(TON)
该指令有两个输入参数和两个输出参数,其定义与TOF相同。
定时器工作原理:
当参数IN的值从0变为1时定时器使能并开始计时,此时Q值为0;当预设时间PT到达后,Q值从0变为1;只要IN的值保持为1,则Q的值保持为1;若IN的值变为0(无论在计时过程中还是已经计时完成),则Q的值变为0,ET时间变为0;
3、脉冲定时器(TP)
该指令有两个输入参数和两个输出参数,其定义与TOF相同。
定时器工作原理:
当参数IN的值从0变为1时定时器使能并开始计时,此时Q值从0变为1;在计时过程中,无论IN的值是否变化,Q的值始终会输出PT的预设时间长度(保持脉冲);当PT时间到达后,Q的值从1变为0;此时如果IN的值为1,则ET的时间保持;若IN的值为0,则ET的时间变为0;
下面我们在倍福TC3环境下编程测试一下:
新建项目,创建全局变量列表timerConfig,并定义变量如下图所示:
其中,presetTime是定时器的预设时间,设置默认值5s;其它变量是各定时器的控制参数(启动、流逝时间和输出值)。这里定义了用于控制三个定时器的变量。
在主程序块MAIN中定义三个变量:
timerOffDelay1 (延时断开定时器);
timerConDelay1(延时接通定时器);
timerPulse1(脉冲定时器);
在主程序中变量定义及代码如下图所示:
登录并下载程序,监控定时器的运行