到目前为止,已经完成了位逻辑运算指令的学习,今天这篇文章将在之前指令学习的基础上完成电机一键启动程序的编写,也就是使用一个自复位的按钮实现电机的启动和停止功能,同时继续加深对PLC扫描周期和PLC程序执行过程的理解。
正文
之前我们是用两个按钮(一个常开的启动按钮和一个常闭的停止按钮)实现电机的起保停控制程序的。
那如何使用一个自复位按钮来控制单个电机的启动和停止呢,这就需要使用沿脉冲类指令和对PLC的扫描周期和程序执行的过程有较好的理解。首先,我们通过一个沿脉冲指令实现电机的第一次启动。程序如下:
在上面的程序中,当我按下启动按钮I1.1,I1.1的值在当前扫描周期就会变为“1”,由于上一个扫描周期M10.1的值为“0”,所以会产生一个上升沿信号,扫描周操作数上升沿指令就会在当前扫描周期内接通,启动标志位M30.0的值在当前扫描周期内就会变为“1”,紧接着,电机Q1.0的值变为“1”,在下一个扫描周期形成自锁(后面会分析),如下图所示。
在下一个扫描周期,由于没有了上升沿信号,所以M30.0的值恢复成“0”,但是,由于Q1.0的值仍然为1,程序形成了自锁,如下图。
以上程序完成了电机Q1.0的自锁控制,也就是第一次启动,接下来要实现第二次按下启动按钮对电机进行停机,也就是将Q1.0左侧的两个支路都要切断。
为了满足这个要求,我们对上面的程序进行了调整,具体内容就是在支路1中加入Q1.0的常闭触点;在支路2中加入M30.0的常闭触点,如下图所示:
再继续进行分析。当I1.1按下去第一次按下去,形成了一个上升沿信号,在当前扫描周期内,启动标志位M30.0的值变为“1”,Q1.0的值变为“1”,但是没有形成自锁。
在下一个扫描周期,由于没有上升沿信号,M30.0的值恢复为“0”,由于Q1.0的值还是为“1”,形成了自锁,即电机Q1.0保持运行,如下面两张图所示。
接下来,再次按下启动按钮I1.1,同样会形成一个上升沿,在当前扫描周期内,启动标志位M30.0变为“1”,由于Q1.1的值为1,当程序段2的的程序从左往右执行的时候,两个支路都被掐断,所以Q1.0的值在当前扫描周期结束的时候变为“0”,且在下一个扫描周期,M30.0和Q1.0的值都是“0”,两个支路保持“断路”的状态,这样就完成了对电机Q1.0的停止操作。