主题
定时与计数例程
定时器与计数器的典型应用。代码为 IL 指令文本,与梯形图一一对应。 时基提醒:
T0-T199为 100ms 时基(K10=1s),T200-T245为 10ms;C0-C99为 16 位增计数。
返回 例程总览。
例程 1:延时启动(接通延时)
场景:按下启动后等 5 秒再输出,常用于风机延时、避开启动浪涌。
LD X0
ANI X1 ; X1 为停止/中断
OUT T0 K50 ; 5s(K50 × 100ms)
LD T0
OUT Y0
END要点
- 通用定时器线圈失电自动复位,所以 X0 断开后 T0 立刻清零,再按需重新计时。
- 需要"保留已计时"的场景改用积算定时器 T246-T255(须用
RST复位)。
验证:X0 接通 → 5 秒后 Y0 才 ON;中途断开 X0 → T0 清零。
注意事项
- 想让输出保持时用
SET Y0,但停止回路必须同时RST Y0,否则会一直保持不断开。 - 「累计计时」和「断电保持」是两件事:积算定时器
T246-T255只是能流断了不清零,断电后当前值一样丢。 要跨断电累计(运行小时数、累计产量),把累计量放进默认保持区的D200~D511或用扩展寄存器 R,见 软元件资源规格。
例程 2:延时断开(断开延时)
场景:按下停止后,输出再保持 3 秒才断(如照明延时灭、风机延时停)。
LD X0
OR M0
ANI T0
OUT M0 ; 自保持,由 T0 到时解除
LD M0
ANI X0 ; X0 断开后才开始计时
OUT T0 K30 ; 3s
LD M0
OUT Y0
END要点
M0是"延时期间维持输出"的中间继电器;ANI T0让 T0 到时切断自保持。- 计时条件是
M0 通 且 X0 断,所以只在松开后才计时。
验证:X0 接通 → Y0 立即 ON;X0 断开 → Y0 继续 ON 3 秒后断开。
注意事项
- 自保持回路漏掉
ANI T0,T0 到时切不断 M0,输出永远断开不了。 - 计时条件写成只由
M0驱动(漏掉ANI X0),会在 X0 还接通时就开始计时,失去"断开延时"的意义。
例程 3:星三角降压启动
场景:大功率电机启动时先星形接法降压,运行数秒后切三角形全压运行,减小启动电流。
软元件:X0 启动、X1 停止、Y0 主接触器、Y1 星形、Y2 三角形
LD X0
OR M0
ANI X1
OUT M0
LD M0
OUT Y0 ; 主接触器:全程吸合
LD M0
OUT T0 K50 ; 星形运行 5s
LD M0
ANI T0
ANI Y2
OUT Y1 ; 星形接触器
LD M0
AND T0
OUT T1 K10 ; 星→三角切换间歇 1s(防弧光短路)
LD M0
AND T1
ANI Y1
OUT Y2 ; 三角形接触器
END要点
T1(约 1s)是切换间歇:必须先断开星形、再吸合三角形,否则相间短路。Y1/Y2双向互锁(ANI Y2/ANI Y1)是最后一道防线,外部仍应加电气互锁。- 若电机启动电流大,把
T0加大到 8~15s(K80~K150)。
验证:启动 → Y0、Y1 吸合;5s 后 Y1 断开;再 1s 后 Y2 吸合,进入全压运行。
注意事项
- 取消
T1间歇、让 Y1 与 Y2 直接切换,极易造成短路。 - 只用定时器不互锁,触点熔焊时会相间短路。
例程 4:长延时(定时器 + 计数器级联)
场景:单个定时器最长约 3276.7s,需要更长延时(如 30 分钟)时,用定时器产生脉冲、计数器计数。
LD X0
ANI T0
OUT T0 K600 ; 60s 周期脉冲(T0 到时自复位)
LD T0
OUT C0 K30 ; 计 30 个脉冲 = 1800s = 30 分钟
LD C0
OUT Y0 ; 长延时到达
LD X1
RST C0 ; 复位计数
END要点
ANI T0+OUT T0让定时器自身复位,每 60s 产生一个脉冲,这是扩展定时的标准做法。- 总延时 = 定时器时间 × 计数器设定值。改
K600/K30可任意组合。 - 16 位计数器到达设定值后保持,必须用
RST清零才会重新计数。
验证:X0 接通后约 30 分钟 Y0 动作(调试时把 K600/K30 改小,如 K10 与 K3 = 3 秒)。
注意事项
- 忘记
RST C0,Y0 会一直保持,无法开始下一轮计时。 - 定时器自身复位回路写成
LD X0 / OUT T0 K600(不加ANI T0),T0 到时后不再复位,只计数一次。
例程 5:计数打包(定量控制)
场景:产线上每来 12 个产品,推一次箱(计数到设定值 → 输出动作 → 自动复位重计)。
软元件:X10 计数输入(光电/接近开关)、C0 计数器、T2 动作时间、Y10 推箱
LD X10
OUT C0 K12 ; 每 12 个一箱
LD C0
OUT T2 K20 ; 推箱动作持续 2s
LD T2
RST C0 ; 动作完成后复位计数,开始下一箱
LD C0
ANI T2
OUT Y10 ; 推箱输出
END要点
Y10 = C0 且 T2未到,保证推箱只持续 2s;T2 到时复位 C0,C0 触点断开,Y10 自然释放。- 产品计数若抖动(一个产品多次触发),应在 X10 回路加防抖定时器,或对高速信号用高速计数器 C235+。
验证:给 X10 连续 12 个脉冲 → Y10 动作 2 秒 → C0 自动清零,重新计数。
注意事项
- 计数输入抖动导致多计:加防抖(串联一个 50~100ms 定时器触点)。
- 超过 32,767 的累计量要用 32 位计数器(
C200+),16 位最大 32,767。
例程 6:多台顺序启动
场景:三台设备依次间隔启动,避免同时上电造成电网冲击(如多台风机、泵)。
LD X0
OR M0
ANI X1
OUT M0
LD M0
OUT Y0 ; 1# 立即启动
OUT T0 K50 ; 5s
LD T0
OUT Y1 ; 2# 延时 5s 启动
OUT T1 K50 ; 再 5s
LD T1
OUT Y2 ; 3# 延时 10s 启动
END要点
- 一个
LD之后可以连续OUT多个线圈(IL 中OUT不清除当前逻辑结果),写法紧凑。 - 停机通常要求逆序(先停 3# 再停 1#),用对称的定时器回路实现。
验证:X0 接通 → Y0 立即 ON,5s 后 Y1 ON,10s 后 Y2 ON。
注意事项
- 把
OUT Y0与OUT T0分成两个LD段落也能工作,但要注意每段都要重新LD M0。 - 需要"启动过程中断"时,X1 停止应同时复位 T0/T1(通用定时器失电自动复位,用
ANI X1驱动即可)。