最近工作比较忙,有个新项目正在实施,没来得及,及时更新,上节讲了下起保停电路,这节我们来讲下正反转电路。我们分别用PLC编写正反转程序以及用纯脚本来实现。
先说下功能,1,按下启动按钮,电机上电,按下正转电机正向旋转,按下反转则电机反转,(此时电机处于静止状态)
2,当电机处于正转或反转的时候,如果不输入延时正反转延时切换时间,则电机直接反转,如果有正反转延时时间限制,则需要达到延时时间然后再进行切换,比如,此时电机正处于正转时,并且此时切换反转延时2s,则此时按下反转按钮,电机停止正转,延时2s后启动反转,反之亦然。
3,当按下停止按钮后,无论电机处于正转还是反转,电机立马停止。
下面我们来分别看下这两种编程的方式。首先是PLC结合触摸屏进行编程。
先看下整个过程动画图,如图1

图1
图1是正反转电路的一个简单的动画演示。用于对上述功能的描述。
PLC结合触摸屏,如图2;

图2,触摸屏结合西门子200smart
梯形图程序:

梯形图1

梯形图2
第二种方法是用脚本实现统一的功能,如图3动画

图3
脚本程序如下:IF 启动输出标志 = 1 THEN
IF 计时 < 5 THEN
计时 = 计时 + 1
ELSE
计时 = 0
ENDIF
ENDIF
IF 启动 THEN
启动输出标志=1
ENDIF
IF 停止 THEN
启动输出标志=0
正转输出=0
反转输出=0
正转输出标志=0
反转输出标志=0
ENDIF
IF 启动输出标志 AND 反转输出=0 AND 正转输出=0 AND 反转输出标志=0 AND 正转输出标志=0 THEN
初始状态=1
IF 正转启动 THEN
正转输出=1
正转输出标志=1
反转输出=0
反转输出标志 =0
ENDIF
IF 反转启动 THEN
正转输出=0
正转输出标志=0
反转输出=1
反转输出标志 =1
ENDIF
ELSE
ENDIF
IF 启动输出标志 AND 反转输出标志 AND 正转 启动 AND 自动切换正转中间值=0 THEN
自动切换正转中间值=1
反转输出=0
初始状态=0
ENDIF
IF 自动切换正转中间值 THEN
!TimerRun(1)
轮子正转定时=!TimerValue(1,0)
IF 启动输出标志 AND 轮子正转定时 >= 轮子正转定时1 THEN
正转输出=1
正转输出标志=1
轮子正转定时=0
自动切换正转中间值=0
反转输出标志=0
反转输出=0
!TimerStop(1)
!TimerReset(1,0)
轮子正转定时=0
else
ENDIF
ENDIF
IF 启动输出标志 AND 正转输出标志 AND 反转启动 AND 自动切换反转中间值=0 THEN
正转输出=0
自动切换反转中间值=1
ENDIF
IF 自动切换反转中间值 THEN
!TimerRun(2)
轮子反转定时=!TimerValue(2,0)
IF 启动输出标志 AND 轮子反转定时 >= 轮子反转定时1 THEN
反转输出=1
反转输出标志=1
自动切换反转中间值=0
轮子反转定时=0
正转输出标志=0
正转输出=0
轮子反转定时=0
!TimerStop(2)
!TimerReset(2,0)
else
ENDIF
ENDIF
以上两个程序可以对比一下,大家更喜欢哪个?每种放都各有各的优点,以上仅用作交流。程序代码仅作为学习交流参考。希望给新手朋友能有所帮助。大家有更好的想法可以留言交流。