关断延时计时器 (TOF)
此信息适用于
CompactLogix
5370、ControlLogix
5570、Compact GuardLogix
5370、GuardLogix
5570、Compact GuardLogix
5380、CompactLogix
5380、ControlLogix
5580、GuardLogix
5580 和 ControlLogix 5590 控制器。TOF 指令是一个非保持型计时器,用于累加指令使能的时间(梯级输入条件为假)。
可用语言
梯形图

功能块
此指令不可用于功能块中。
结构化文本
此指令不可用于结构化文本中。
操作数
重要提示:
以下情况下会导致运行出现意外:
- 输出标签操作数被覆盖。
- 结构操作数的成员被覆盖。
- 除非另外指定,否则结构操作数由多条指令共用。
梯形图
操作数 | 数据类型 | 格式 | 说明 |
|---|---|---|---|
Timer | TIMER | 标签 | 计时器结构 |
Preset | DINT | 立即数 | Timer.PRE 的值 |
Accum | DINT | 立即数 | Timer.ACC 的值 |
操作数 | CompactLogix 5380、ControlLogix 5580、Compact GuardLogix 5380、GuardLogix 5580 和 ControlLogix 5590 控制器数据类型 | 格式 | 说明 |
|---|---|---|---|
Timer | TIMER_T | 标签 | Timer_T 结构 |
Accum | TIME | 立即数 | Timer.ACC 的值 |
Preset | TIME | 立即数 | Timer.PRE 的值 |
预设和累加值(对应于计时器标签中的 .PRE 和 .ACC)是伪操作数。有关详细信息,请参阅 伪操作数初始化。
TIMER 结构
助记符 | 数据类型 | 说明 |
|---|---|---|
.EN | BOOL | 使能位,包含指令上次执行时的梯级输入条件。 |
.TT | BOOL | 计时位,置位时指示计时操作正在进行。 |
.DN | BOOL | 完成位,清零时指示计时操作完成(或暂停)。 |
.PRE | DINT | 预设值,指定在指令指示完成之前累加值必须达到的值(以 1 毫秒为单位)。 |
.ACC | DINT | 累加值,指定自 TOF 指令使能起经过的时间(毫秒)。 |
TIMER_T 结构
助记符 | 数据类型 | 说明 |
|---|---|---|
.EN | BOOL | 使能位,包含指令上次执行时的梯级输入条件。 |
.TT | BOOL | 计时位,置位时指示计时操作正在进行。 |
.DN | BOOL | 完成位,置位时指示计时操作完成(或暂停)。 |
.ACC | TIME | 累加值指定自指令使能后经过的时间,精确到微秒。 |
.PRE | TIME | 预设值指定指令指示完成之前累加值必须达到的值,精确到微秒。 |
说明
TOF 指令将累加时间,直到:
- 计时器禁用
- 计时器到期
时基始终为 1 毫秒。例如,对于 2 秒计时器,应将 .PRE 值输入为 2000。
计时器在计时器到期时将 .DN 位设置为假。
使能后,将 .DN 位设置为假可暂停计时,将 .DN 位设置为真可恢复计时。

计时器工作原理
计时器工作时会用当前时间减去上次扫描的时间:
ACC = ACC + (current_time - last_time_scanned)
更新 ACC 后,计时器设置 last_time_scanned = current_time,从而使计时器为下一次扫描做好准备。
影响数学状态标志
否
严重/轻微故障
在以下情况下会发生严重故障: | 故障类型 | 故障代码 |
|---|---|---|
.PRE < 0 | 4 | 34 |
.ACC < 0 | 4 | 34 |
请参阅,了解数组索引故障。
执行
梯形图
条件/状态 | 执行的操作 |
|---|---|
预扫描 | .EN 位设置为假。 .TT 位设置为假。 .DN 位设置为假。 .ACC 值设置为等于 .PRE 值。 |
梯级输入条件为假 | 将梯级输出条件设置为梯级输入条件。 请参见 TOF 流程图(假)。 |
梯级输入条件为真 | 将梯级输出条件设置为梯级输入条件。 .EN 位设置为真。 .TT 位设置为假。 .DN 位设置为真。 .ACC 值清零。 |
后扫描 | .EN 位设置为假。 .TT 位设置为假。 .DN 位设置为假。 .ACC 值设置为等于 .PRE 值。 |
TOF 流程图(假)

示例
梯形图

当 limit_switch_9 清零时,light_8 接通并持续 180 毫秒(timer_2 计时)。当 timer_2.acc 达到 180 时,light_8 断开,light_4 接通。Light_4 保持接通,直到 TOF 指令使能。如果在 timer_2 计时期间 limit_switch_9 为真,则 light_8 断开。

当 tglTest21 清零时,timing21
(TIMER_T类型)
持续接通 20 毫秒 100 微秒(timer21 计时)。当 timer21.acc 达到 20 毫秒 100 微秒时,timing21 断开,done21 接通。Done21 保持接通,直到 TOF 指令使能。如果在 timer21 计时期间 tglTest21 为真,timing21 断开。提供反馈