回复:技术专题探讨-SIMATIC PLC 计时器的使用

脚跟着地

  • 帖子

    23
  • 精华

    0
  • 被关注

    2

论坛等级:新手

注册时间:2005-06-23

普通 普通 如何晋级?

发布于 2009-01-05 20:55:50

0楼

S7-200可编程控制器系统手册 P213
分辨率对定时器的影响[COLOR=BLUE]
对于1ms分辨率的定时器来说,定时器位和当前值的更新不与扫描周期同步。对于大于1ms的程序扫描周期,定时器位和当前值在一次扫描内刷新多次。
对于10ms分辨率的定时器来说,定时器位和当前值在每个程序扫描周期的开始刷新。定时器位和当前值在整个扫描周期过程中为常数。在每个扫描周期的开始会将一个扫描累计的时间间隔加到定时器当前值上。
对于100ms分辨率的定时器来说,定时器位和当前值在指令执行时刷新。因此,为了使定时器保持正确的定时值,要确保在一个程序扫描周期中,只执行一次100ms定时器指令。[/COLOR]
100mS的定时器已经用程序验证过了,确实是在扫描到定时器线圈时也就是在指令执行时刷新的.所以版主所说的第一个定时程序如果用100mS的时基转化为S7-200的定时程序在S7-200里面是可以无误执行的.

下面的程序用于验证10mS的定时器,10mS时基的定时器是在两次扫描之间进行更新的

在用100mS时基的定时器时,Q0.1能接通,因为虽然程序处于死循环中但100mS时基的定时器是在程序执行时更新的.但是用以上程序时,Q0.1不能接通了,这是因为10mS时基的定时器是在两次扫描之间进行更新的,因为死循环的原因,此次扫描不会结束,所以T33的值不会更新,Q0.1也就不会接通了.

下面的程序用于验证1mS的定时器,1mS时基的定时器是异步于扫描周期的,其工作机理为:当扫描到定时器线圈接通时,PLC以1mS的间隔更新定时器的值,当扫描到定时器线圈断开时定时器值归零,其内部实现的机理可能用中断的机制完成的,此种更新需占用大量的CPU资源,所以S7-200的1mS定时器数量很少.

在用100mS时基的定时器时,Q0.1不能接通,因为不能扫描到T103的线圈,但是在以上程序中,Q0.1确能接通,其原因就是异步更新机制.而且在Q0.0接通以后马上断开I0.0,Q0.1也能接通.因为CPU没扫描到T32线圈断开,所以一直更新其值.


以上程序在S7-200中测试过.
注意:如果有网友按以上程序进行测试(包括测试100mS时基的程序)时,当程序运行时下载程序,或监视程序可能会产生通迅错误,此原因可能是因为:CPU是在扫描之间处理外界通迅请求的.所以下载程序时请将PLC置于STOP状态.
管理员注:本帖已被纳入此次探讨整理结果,请点此详阅
每日分享 分享知识 分享快乐
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54699条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。