您现在所在的是:

PLC论坛

回帖:1个,阅读:5437 [上一页] [1] [下一页]
957
kaper
文章数:2
年度积分:50
历史总积分:957
注册时间:2008/4/28
发站内信
发表于:2008/4/28 15:21:00
#0楼
我是才学这个的。
下图所示为正确使用定时器的一个例子。它用来在定时器计时时间到时产生一个宽度为一个扫描周期的脉冲。
附件
哪位大虾详细解释一下为什么是正确的和错误的啊?
为什么当定时器计时到时,定时器在每次扫描开始时刷新。该例中T33被置位,但执行到定时器指令时,定时器将被复位(当前值和位都被置0)?
谢谢了啊






[此贴子已经被作者于2008-4-28 15:56:11编辑过]
38148
cvlsam 版主
文章数:12493
年度积分:759
历史总积分:38148
注册时间:2001/12/22
发站内信
2018论坛贡献奖
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011论坛贡献奖
2011国庆活动
2010论坛杰出贡献奖
发表于:2008/5/25 16:16:00
#1楼
在讨论这个问题前,首先描述一下S7-200PLc定时器的刷新方式。
1ms定时器:每隔1ms刷新一次,定时器刷新与扫描周期与程序处理无关,采用的是中断刷新的方式,因此,当扫描周期过长时,在一个周期内会被多次刷新。
10ms定时器:在每个扫描周期开始时刷新,而在扫描周期内当前值不变。
100ms定时器:在定时器指令被执行时刷新。

然后我们来分析一下楼主您的问题所在:
(A)图的1ms定时器的应用:左图的错误原因在于:1ms定时器每隔1ms刷新一次定时器的当前值,CPU当前值如果正好在处理动断触点和动合触点时被刷新,此时Q0.0可以被接通1个周期,但是这种情况很少,大多数情况是定时器时间到,定时器刷新,而使得输出Q0.0输出,但是由于是每隔1ms刷新,因此Q0.0还没有来得及置位,就被复位了。因此需要使用右图的非自身激励输入程序。
(B)图的10ms定时器的应用:左图的错误在于,由于10ms定时器是每个扫描周期前刷新当前值,因此,定时时间到时,定时器输出动作,但是由于动断触点的动作,定时器被立即复位,因此,输出线圈Q0.0不会被置位。
(C)图为100ms定时器的应用,因为100ms定时器是执行指令时刷新,因此Q0.0在T37到时准确的接通一个周期。

而日系PLC在定时器的刷新上则没有那么复杂,因此熟悉日系产品的用户可能会不习惯于西门子产品。

以上!

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

46.8003