学会了西门子S7-1200定时器的基础用法,怎么才能真正用到实际项目里?最经典、最必练的实战案例,就是三台电机顺序启动、逆序停止。
这个案例完美覆盖了TON接通延时、TOF断开延时的核心用法,工控现场90%的多设备分级启动、延时停机控制,都是在这个程序的基础上延伸出来的。新手只要把这个案例吃透,现场的传送带、泵组、生产线顺序控制,都能直接举一反三。
这篇文章就手把手教你写出完整的顺启逆停程序,从控制要求、变量定义,到分步编程,新手照着做就能一次成功。
一、先明确核心控制要求
我们先把控制逻辑理清楚,写程序之前一定要先明确时序要求,不然写出来的程序很容易出问题:
(1)按下启动按钮,1#电机立即启动;延时3秒后,2#电机自动启动;再延时3秒后,3#电机自动启动;
(2)按下停止按钮,3#电机立即停止;延时5秒后,2#电机自动停止;再延时5秒后,1#电机自动停止;
(3)启动过程中按下停止按钮,立即执行逆序停止逻辑;停止过程中按下启动按钮,立即重新执行顺序启动逻辑。
二、第一步:PLC变量定义(IO地址分配)
写程序之前,先把输入输出地址、中间变量定义好,这是程序不出错的基础,也是现场接线的依据。
1. 硬件IO变量表
2. 数据块DB变量定义
我们需要创建一个全局DB块,用来存放定时器和中间控制变量,避免程序出现逻辑冲突:
三、第二步:编写主控启停逻辑
先写最核心的总控制信号,用SR复位优先触发器,实现停止优先的安全控制,这是工控程序的安全红线。
程序逻辑:
- 置位端S:接启动按钮start(%I0.0)的常开触点,按下启动按钮,总控制信号motorControl置位为1;
- 复位端R1:接停止按钮stop(%I0.1)的常开触点,按下停止按钮,总控制信号motorControl立即复位为0;
- 输出Q:赋值给motorControl变量,作为三台电机启停的总控制信号。
这样写的好处是,任何时候按下停止按钮,都能立即切断总控制信号,优先执行停止逻辑,保证现场设备安全。
四、第三步:分电机编写控制程序
1. 1#电机控制程序(立即启动,延时5秒停止)
1#电机是第一个启动、最后一个停止的,核心用TOF断开延时定时器实现延时停止功能。
程序逻辑:
- 定时器IN端:并联两个信号,一个是总控制信号motorControl,另一个是2#电机motor2的运行信号;
- 定时器PT端:设置为T#5S,也就是停止延时5秒;
- 定时器Q端:直接赋值给1#电机motor1(%Q0.0)。
运行逻辑:
- 启动时:按下启动按钮,motorControl置1,TOF定时器IN端为1,Q端立即置1,1#电机直接启动;
- 停止时:按下停止按钮,motorControl复位为0,此时2#电机还在运行,IN端依然保持1,直到2#电机停止,IN端变为0,TOF定时器开始计时,5秒时间到,Q端复位,1#电机停止。
2. 3#电机控制程序(延时3秒启动,立即停止)
3#电机是最后一个启动、第一个停止的,核心用TON接通延时定时器实现延时启动功能。
程序逻辑:
- 定时器IN端:串联两个信号,一个是总控制信号motorControl,另一个是2#电机motor2的运行信号;
- 定时器PT端:设置为T#3S,也就是启动延时3秒;
- 定时器Q端:直接赋值给3#电机motor3(%Q0.2)。
运行逻辑:
- 启动时:2#电机启动后,TON定时器IN端置1,开始计时,3秒时间到,Q端置1,3#电机启动;
- 停止时:按下停止按钮,motorControl复位为0,TON定时器IN端立即变为0,Q端直接复位,3#电机立即停止。
3. 2#电机控制程序(延时3秒启动,延时5秒停止)
2#电机是中间过渡的,既要延时启动,也要延时停止,相当于1#和3#电机的组合,用TON+TOF两个定时器实现。
程序逻辑:
- 启动部分:TON定时器IN端接1#电机motor1的运行信号,PT设为T#3S,Q端控制2#电机的启动条件;
- 停止部分:TOF定时器IN端接3#电机motor3的运行信号,PT设为T#5S,Q端控制2#电机的停止条件;
- 最终输出:两个定时器的信号并联,赋值给2#电机motor2(%Q0.1)。
运行逻辑:
- 启动时:1#电机启动后,TON定时器开始计时,3秒时间到,2#电机启动;
- 停止时:3#电机停止后,TOF定时器开始计时,5秒时间到,2#电机停止。
五、新手必看的避坑要点
1.定时器必须分配独立的背景数据:每个定时器都要有独立的背景DB,我们用数组的方式统一管理,避免出现定时器互相干扰、计时异常的问题。
2.停止优先是安全红线:所有控制逻辑都要保证停止按钮优先级最高,任何时候按下停止,都能立即执行停止逻辑,绝对不能出现停不下来的情况。
3.时序一定要匹配:启动时1#→2#→3#,停止时3#→2#→1#,程序里的信号串联一定要对应,不然会出现启动顺序混乱、停止逻辑异常。
4.现场接线和程序逻辑对应:停止按钮现场用常闭触点,程序里就要用常开触点,一定要提前核对,不然会出现按下停止按钮无法停机的安全隐患。
这个顺启逆停案例,完美覆盖了S7-1200 TON和TOF定时器的核心用法,是新手从理论到实战的必经之路。只要把这个程序吃透,搞懂定时器的触发逻辑和时序控制,现场绝大多数的延时控制项目,你都能轻松搞定。