登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:用到ANDP编制一个Y0、Y1先后接通的程序

点击:1967 回复:10


   要求:X0输入,Y0、Y1输出。第1次接通X0,Y0接通;第2次接通X0,Y0断开、Y1接通。需用到ANDP指令。
以下详述程序编制过程,以台达ES2型PLC试验。
   补叙:那次,有人问起PLS指令与ANDP指令,便随手举了个例子。我编程一般使用所谓的“经验设计法”,下面这个例子也是这样。欢迎各位,提出另外的设计方法。
   要用到接点脉冲指令和Y0、Y1,故不妨先将二者安排进去,编制一个图1的程序。显然,程序还不能满足要求,在接通X0时,Y0、Y1仅会闪亮一下。
http://bbs.gkong.com/uploadImages8/1c26a5d80dd382059e536b3b739c804f.jpg
   首先,我们需使Y0能够长期接通,不妨采用自保,见图2。接下来的问题,就是如何使Y1不接通——很自然想到的办法是,可以把Y0的常闭点串到Y1线圈回路,见图3。
http://bbs.gkong.com/uploadImages8/e25364e7d5e7afc97cf3816e4c845b9d.jpg
http://bbs.gkong.com/uploadImages8/508ce849955755fc9ce4f81d743969d3.jpg
   好了,第一个目的达到了:接通X0一次,Y0接通。
   那么,X0断开后再接通,如何才能使Y0断开、Y1接通呢?这得利用现有的条件了。
   现有条件是:X0是第2次接通、Y0已经接通。那么,怎么知道X0是第二次接通,有什么标志呢?其实,X0的上升沿、加Y0的接通,这组合就可表示“X0是第2次接通”,不妨试试,见图4。
http://bbs.gkong.com/uploadImages8/bc673e905f9aa268a0e448045e48b285.jpg
   为便于编程,特将X0┫↑┣与Y0┫┣的组合,用M0表示。这样做,还能使图面清晰,便于阅读程序。
   嗯,现在该看看效果了。运行程序,接通X0,Y0接通;断开X0、再接通,没变,还是Y0接通?!
   得分析一下程序了。
   第1次接通X0,Y0接通;接下来执行第5行(步序号为5的行)的程序块。此时,X0的上升沿是接通的,Y0已经接通,M0将接通;执行到第10行,Y0的常闭点是断开的,所以Y1不接通。断开X0。
   第2次接通X0,Y0保持接通……与上次情况相同!所以Y0不能断开,Y1不能接通;哦,问题肯定在这里了。
   那么,利用M0的常闭点断开Y0呢?不妨试一下,见图5。
http://bbs.gkong.com/uploadImages8/30ad97c30a9651d5e59ee4d6ea1c9cd7.jpg
   这下好了,运行程序,接通X0,连Y0也不亮了(观察PLC的输出指示灯);哈哈,可以收拾装备,回去休息了。
   且慢,为什么是这样呢?为什么会这样,前面不是说了吗,X0第1次接通时,M0就接通了,M0的接通,使Y0又断开了。
   有点眉目了,这么说来:M0的接通,保持到了第2个扫描周期;Y0接通后又断开了。
   再次试验,仔细观察,果然Y0闪亮了一下。但M0的接通,也应当与X0的上升沿一致,只有一个扫描周期。或许,是执行OUT M0,M0接通;再次执行到OUT M0,M0断开。
   (从上述分析可知,图5中,M0没有能够判别出“X0是第2次接通” 。)
   对,扫描周期——第一次接通X0时,不需要M0起作用;于是,可以试把M0指令移至Y0前,见图6。
http://bbs.gkong.com/uploadImages8/7f772d35f4c9825e030f15192f6e39b9.jpg
   运行程序,可以了。
   啰嗦了一阵,想说明什么问题呢,是想谈点收获:
   ① 扫描周期的利用;指令位置不同,可能效果不一样。
   ② 从这程序,可以看到,M0的接通,保持到了再次执行到OUT M0指令。
   当然,熟悉了以后,这个程序,可以直接编制,而不需从图1开始。之所以从图1开始介绍,是想说明,初学PLC编程而不知从哪里开始时,可以用基本的方法,从需要实现的功能入手。
   呵呵,献丑了,多多包涵!
   (20100617)
10-06-17 16:08
要我来写的话,直接对X计数。就好了。随便你要实现怎样的动作都OK。
10-06-17 16:39
附件
如图,X20为按钮开关,X21为复位开关,启动后对Y1、Y2复位。C1对X20计数,根据C1的数据,输出对应的Y1、Y2。图中[C1=K1]之类的触点后,应当追加上升沿信号,以防止持续动作,复位失效的可能。
10-06-17 16:53

   奇怪,从有些帖子看来,论坛上有一部分是初学者,但入门的帖子,却不怎么受欢迎。
   是不是有的新朋友,有问题的时候来了;没问题的时候,因为时间紧张,就没来了。
   顶楼帖子的特点是,描述了一个详细的过程,并举例说明了扫描周期的概念和脉冲指令的作用范围,实在是一个好的资料;刚开始学习时,从简单的例子入手,对概念更容易理解。
   顶楼图6的Y1线圈一行,如果不是为了突出X0的作用或为了演示ANDP指令,则X0的上升沿接点可以去掉。
   3楼提出了程序编制的另一个方案;多种方案的讨论,有利于锻炼思维能力。
10-06-21 06:26
对于初学PLC者来说,可能最不容易理解的就是PLC的工作方式。楼主从一个基本的编程实例阐述了它的编程思路,对初学者学习理解程序非常有帮助。
10-06-21 06:58
我也蛮奇怪的,怎么没人看,没人顶呢。
时下的人,都浮躁,尤其是一些年轻点的人,没事的时候忙着偷菜抢车位,有事了上来一句话一个问题。然后就在那里等答案。再也不上来交流。
10-06-21 09:39
俺就是初学者,顶
10-06-21 11:03
很经典
10-06-25 20:38
可以考虑这样一个问题,一个按钮怎么控制两台电机启停。就是按一下按钮,第一台电机启动。再按一下,第一台电机停止。再按一下,第二台电机启动。再按一下,第二台电机停止。
和楼主的问题有相同点。不过这个是实际工程中的问题。
10-06-26 09:07
第二次按X0的时候不能通Y1吧!扫描到Y0时都断开了,下面的Y1怎么通呢?
10-07-14 22:52

上一页下一页

工控新闻

更多新闻资讯