用户中心

资讯 > 技术之源

PLC是如何进行扫描的?

来源:控制工程网2016.10.26阅读 4293

  全世界范围内,几乎所有的可编程逻辑控制器PLC)都采用相同方式处理扫描问题。首先,CPU读取物理输入信号并存储于内存表中,通常被称为“输入表”,在程序评估的时候使用该表。在不同的平台之间,有不同类型的寄存器;当逻辑沿着每个程序的梯形图从左到右以及从上到下处理的过程中控制工程网版权所有,寄存器的内容得到更新。这包括输出表的更新,该输出表会在后续用于驱动连接到PLC的物理设备。
  程序可以因为不同的目的而调用不同的子程序;执行顺序比较重要。根据内存寄存器和输出表更新的位置控制工程网版权所有,物理输出可能延误长达两个扫描周期。在任意一种情况下,被调用以后,程序通过不同的路径执行,直到返回到程序被调用的地方,而且最终终止在初始循环程序处。大多数程序都使用初始循环程序,用于调用其它程序。一些程序按照周期运行,而不是连续运行。大部分使用一个连续运行程序,且运行的能多快就多快。


图中所示为使用请求数据包间隔(RPI) 进行可编程逻辑控制器扫描的例子。

  在完成所有代码执行、逻辑评估以及更新所有数据表(除了在扫描最开始的时候写入的输入表以外)之后,结果输出表或寄存器内容被写入到物理输出上。
  扫描时间长短取决于平台(处理器的速度)、程序中代码的多少以及所用的指令类型。有时候编程人员会在程序中使用回路或者重复调用相同的程序。所有这些都会影响总的扫描时间。一般会有文档说明不同的指令所需要的执行时间,不过将它们加起来用于时间长度的估计是没有意义的。那仅仅用于参考目的。
  扫描时间可以长达80 ms。如果扫描时间超过50 ms(对于一个机器控制项目),那么用户需要寻求更加强大的处理器或使代码更加高效的方法。超过50 ms以后控制工程网版权所有,对于机器控制项目的输出响应的影响可以很严重,对于过程控制来说,这应该不是问题。
  本文图中所示的案例中,这个程序的扫描时间显示为56 ms。尽管对于每个平台来说控制工程网版权所有,扫描的工作方式都有所描述,但是这是个例外(显示为A,B和C)。这个平台采用制造商-消费者模式,输入卡为CPU加工信息,CPU为输出卡加工信息。这样就可以说CPU“消费”信息,而输出卡消费来自于CPU的信息。信息的加工和消费在每个输入/输出(I/O)卡内通过设定所谓的请求数据包间隔(RPI)来制定时间安排。
  假设将RPI设定为20 ms;每个扫描周期中,程序都会从物理输入获得一些更新,并且每个扫描周期更新两次物理输出。这对于数字量I/O很常见;模拟量输入通常设定为100 ms或更长控制工程网版权所有,并且其更新通常比数字量更慢。更新在扫描周期的不同点进行,所用的时间长度会有比较大的变化。(作者:Frank Lamb)

版权声明:版权归控制工程网所有,转载请注明出处!

频道推荐

关于我们

控制工程网 & CONTROL ENGINEERING China 全球工业控制、自动化和仪器仪表领域的先锋媒体

CE全球

联系我们

商务及广告合作
任小姐(北京)                 夏小姐(上海)
电话:010-82053688      电话:18616877918
rendongxue@cechina.cn      xiashuxian@cechina.cn
新闻投稿:王小姐

关注我们的微信

关于我们 | 网站地图 | 联系我们
© 2003-2020    经营许可编号:京ICP证120335号
公安机关备案号:110102002318  服务热线:010-82053688