PLC编程OB35里写定时器的程序问题

分享到:
272
下一篇 >

菜鸟问:

我想在OB35里写一段定时器的程序,想请教下,如果设置OB35的时间是2MS,那么我在OB35里写一个2S的定时器,想请教2MS和2S是如何工作的,之间有什么关系,谢谢!

大虾:

不建议定时器放入中断中执行。必须保证定时器每个周期都要被扫描到。

高手:

OB35的周期是2ms,那么每格2ms就会调用一次OB35,定时器在其触发条件启动后开始计时,计时过程是不需要你的程序进行扫描的!你的每次扫描只是询问定时器当前计时的情况,到了什么状态而已。象你这种情况,你就当在OB1中一样的使用吧,因为一般情况下OB1的扫描周期会大于2ms,除非你的程序很小。

甲:

本例中OB35是每2ms执行一次呢还是每隔2ms执行一次呢?

菜鸟:

感谢二位的讲解,我觉得在OB35里写定时器的程序,确实感觉很别扭,就算定时器时间到,触发了条件,把要执行的时间放在OB1里也不知道执行到哪里去了,所以感觉中断里*好写的是要执行的时间,而不是条件。

大虾:

*好在OB1中使用定时的功能

乙:

在OB35里面对一个值进行累加,加到1000就执行需要2s做一次的动作,然后把累计值清零。

高手:

OB35的帮助中说:“必须确保每个周期性中断OB的运行时间远远小于其时间间隔。如果因时间间隔已到期,如果在预期的再次执行前未完全执行周期性中断OB,则启动时间错误OB (OB80)。稍后将执行导致错误的周期性中断。”

2ms的时间间隔太短,如果不能满足上述要求,可能会出错。

菜鸟:

我不知道自己说的对不对,我的理解是

OB35时间中断每2Ms执行一次,但是里面的2s定时器在**次触发时就开始计时(条件一直满足),不会受到OB35调用周期的影响,直到计时时间到达2s,触发时钟线圈。。。。 

总之,我感觉定时器和时间中断的周期并无直接关系,只和计时器的条件有关。。。。

高手:

其实OB35那个扫描时间,实际上就是指OB35里的程序扫描周期,定时期间未到,那他就是每隔2ms查询一次,这个周期和定时时间没有必然联系。

你可能感兴趣: 工控菜鸟园 自动化系统 PLC
无觅相关文章插件,快速提升流量