1.想做多个定时中断,取多个时间中断的最大公约数,对中断进行计数,输出相对应的定时控制,对此程序有什么更好的写法?
2.用以上方法,我写的程序,监测时,有时中断计数不能工作,定时周期好象不准?为什么?
3.谢谢各位!
问题补充:
比如:我的定时时基是200ms,我在中断中累加计数VB0,当VB0=2时,就是400ms定时,输出一个逻辑位(= M0.0),当VB0=100时,就是20s定时,输出一个逻辑位(= M0.1);监测后,定时不太准确.
是不是计算机上位机监测周期长,PLC运行速度快,有的运行状态监测不到?还是?
最佳答案
1、定时中断的精度取决于CPU主频以及程序中的中断队列。但这些误差一般是看不出来的。
2、如果中断计数没有工作,应该是程序有问题。
3、上微机与PLC的通讯是有滞后的,不具备实时性,所以上微机监控的结果不能说明“定时不准”。这一点你可以通过观察定时器的运行状态看出来,定时器上的数值不是连续变化,而是跳跃式的变化。
提问者对于答案的评价:
用示波器观察是准备的.是上位机监测问题,周期长,扫描速度慢.
特别感谢LiaoHuai!邮件支持.
对于答案来说的话,是鼠老爹的准确些.
再次感LiaoHuai.
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc351131.html