中断与定时

在中断程序中,用一个定时器(t37)导通一个线圈,为什么不行。而同样的程序,在主程序中就行。例如:
 Network 1 // 网络标题
 // 网络注释
 LD     SM0.0
 R      M0.0, 1
 S      Q0.5, 1
 Network 2 
 LD     SM0.0
 TON    T37, 20
 Network 3 
 LD     T37
 R      Q0.5, 1
 

最佳答案

不会行的。
 在中断程序被执行,可以触发定时器,但退出中断后,该定时器不会被扫描。
 你在中断程序中用了TON    T37, 20,即延迟00ms*20=2000ms,即2S。系统不可能在这2S中来等待,会有级别高的中断来中断这个中断。
 不提倡中断程序过长或占用系统时间过长。

 为什么中断程序不宜过长 ?
 PLC的CPU的运行机制是周期扫描的,例如100ms为一扫描周期。发生中断后,则中断当前的扫描,去执行中断程序。如中断程序过长,那么就会影响周期扫描的执行,即影响系统对I/O信号的读入及其他控制程序运行等。总之,对中断程序过长,对控制系统的实时性及可靠性均有影响。

提问者对于答案的评价:
听君一席言,胜读一年书。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc346993.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月4日 下午11:13
下一篇 2021年7月4日 下午11:13

相关推荐

发表回复

登录后才能评论