施耐德PLC实现队列控制的方法 .doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
施耐德PLC实现队列控制的方法

施耐德PLC实现队列控制的方法 1.概述 队列是来自数据结构的一个概念,即数据的处理是按照先进先出(FIFO)原则执行,在plc的控制程序中有时也会用这种方法。 在一条生产线上的颗粒状物料输送设备中,有四路物料输送管线,但抽取物料的罗茨泵只有一台,因此在任意时刻只能有一条物料输送管线工作,如果在这条管线工作时,其它物料管线有工作请求,只能排队等待,在有等待状况发生时的PLC程序的控制,是一个典型的队列应用。 2 在施耐德Twido系列PLC中的实现方法 在Twido PLC中有现成的寄存器功能块可以配置成队列(FIFO)工作方式,最初也正是用这种方式编写的PLC的控制程序,程序的几处关键请看下面几个程序段图。 nbsp; nbsp;nbsp; nbsp; nbsp; 在程序调试阶段,设备工作一切正常。但设备在实际运行中,总是会在1~3天内发生1到2个物料输送管线的请求不被执行而始终处于等待状态,只有断电后重新启动设备才能恢复正常工作。随后又仔细分析了Twido PLC的寄存器(队列模式)功能块,发现使用它时必须保证四路物料输送管线的请求在任意时刻不能同时有两个请求发生,否则就会出现上面的问题,而实际工作中,两个或两个以上的请求同时(PLC的一个扫描周期,大约在10ms之内)发生的机率确实存在,正是这种不定期发生的同时出现的请求,使设备不定期地出现物料输送管线的不正常工作。 找到原因后,在改写PLC程序时发现,如果加上处理同时发生的几个请求的程序,使得使用Twido所提供的寄存器(队列模式)功能块的程序可能会更加复杂,于是决定不使用这个功能,用常规编程来完成控制要求。 在程序需要重点考虑的就是这种多路物料输送管线同时发生请求的情况。在程序中将每一个请求用自锁回路保持住,然后将锁定的信号驱动一个定时器,对请求的执行是通过比较几个定时器的当前值大小来决定那一路物料输送管线动作。 在程序中编写下面四个类似的程序段: 实现请求的判断:nbsp; nbsp; 请求处理: nbsp; nbsp; 在请求处理程序段中已经包含如果有同时发生的请求时,按照1-gt;2-gt;3-gt;4的默认动作顺序来决定优先顺序。 在使用改进后队列处理程序后,该设备运行约两年,一直工作正常,再没出现过某路物料输送管线的请求不被执行的情况。 在这个案例中,说明有些情况下,使用PLC所提供的功能并不一定是最佳的解决方式,此时,不妨考虑一下换一个实现思路的可能性。

文档评论(0)

liujiao19870001 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档