您现在所在的是:

PLC论坛

回帖:18个,阅读:31867 [上一页] [1] [2] [下一页]
983
yike1104
文章数:5
年度积分:50
历史总积分:983
注册时间:2003/7/2
发站内信
发表于:2003/9/13 11:22:00
#0楼
在下以前做51单片机开发的,定时器最多3个,比较好用。现在做的项目是西门子的PLC,发现定时器居然有128个。很惊奇为什么会有这么多资源。
请问各位高手,一般来说同时开定时器的个数有没有限制?我用STL编写的一个小程序同时开了3个定时器,结果程序第二次循环的时候就乱了。
谢谢!
3270
litianxi
文章数:942
年度积分:50
历史总积分:3270
注册时间:2001/4/10
发站内信
发表于:2003/9/13 11:35:00
#1楼
对于1ms分别率的定时器,定时器位和当前值的更新不与扫描周期同步。对于大于1ms的程序扫描周期,在一个扫描周期内,定时器位和当前值刷新多次。
对于10ms分别率的定时器,定时器位和当前值在每个程序扫描周期的开始刷新。定时器位和当前值在整个扫描周期过程中为常数。在每个扫描周期的开始会将一个扫描累计的时间间隔加到定时器的当前值上。
对于100ms分别率的定时器,定时器位和当前值在指令执行时刷新。因此,为了使定时器保持正确的定时值,要确保在一个程序扫描周期中,只执行一次100ms定时器指令。
1223
Guan_Qing_Xin
文章数:175
年度积分:50
历史总积分:1223
注册时间:2002/8/7
发站内信
发表于:2003/9/13 11:43:00
#2楼
楼上那位大侠,这是什么PLC的定时器刷新概念?它有普遍性吗?
1223
Guan_Qing_Xin
文章数:175
年度积分:50
历史总积分:1223
注册时间:2002/8/7
发站内信
发表于:2003/9/13 11:46:00
#3楼
续: "要确保在一个程序扫描周期中,只执行一次100ms定时器指令",是指只使用一个100ms的定时器码?
3270
litianxi
文章数:942
年度积分:50
历史总积分:3270
注册时间:2001/4/10
发站内信
发表于:2003/9/13 12:03:00
#4楼
以上是对西门子PLC。
执行一次,不是一个。
比如:
LD     I0.0
FOR    VW100, +1, +10

NETWORK 2
LD     M0.0
TON    T101, +1000
NETWORK 3
NEXT

NETWORK 4
LD     I0.0
TON    T102, +1000

在这段程序中,当I0.0接通时,T101比T102多计时10倍。因为T101在一个程序周期内执行10次,而T102只执行1次。要正确计时,在一个程序周期内计时器必须执行并只能被执行一次。

表情
[此贴子已经被作者于2003-9-13 12:04:29编辑过]
959
toeast
文章数:2
年度积分:50
历史总积分:959
注册时间:2003/3/13
发站内信
发表于:2003/9/17 20:40:00
#5楼
I used 20 timers in a test system to control circuit (off and on), it works good. They all are of 100 ms. However, the system need no precise timer, so I have idea of its accuracy.
998
jerryme
文章数:20
年度积分:50
历史总积分:998
注册时间:2003/3/3
发站内信
发表于:2003/9/22 15:10:00
#6楼
感谢
878
nonp
文章数:41
年度积分:50
历史总积分:878
注册时间:2001/7/20
发站内信
发表于:2003/10/19 10:57:00
#7楼
在下做51单片机开发的和PLC开发的,不错单片机定时器有3个,其实只用单片机1个定时器可以开发出象PLC里同时开的定时器,单片机是PLC的内核吗!!!计数器也一样!!!

979
roy1978
文章数:37
年度积分:50
历史总积分:979
注册时间:2003/2/4
发站内信
发表于:2003/10/22 13:17:00
#8楼
plc一般对每一种分辨率的计时器提供一个相应频率的硬件计数器,在扫描程序结束时。将计数器的值加至计时条件成立的相应计时器当前值,在下一扫描周期,根据计时条件及当前值刷新计时器状态。当然,PLC硬件由高性能的微处理器(单片机?)组成,各PLC厂商的软件各有所长。
959
mingchina
文章数:4
年度积分:50
历史总积分:959
注册时间:2003/10/20
发站内信
发表于:2003/10/22 13:39:00
#9楼
我是学电子的,不懂PLC,但我知道,如果有足够的RAM,可以编N个定时器或记数器,而且,如果程序不是有几十K这么大的话,完全可以控制循环在10ms之内

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

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

93.6006