有关OB1主程序扫描时间的累计

是这样的,我用的是PLC300,CPU型号为6ES-7KF02-0AB0,我想通过累计OB1中主程序扫描时间来得到某个动作持续执行的时间值(中断计时,定时器累加计时我都用过),这种方法是我在书上看到的,不知可行与否?我知道要读取临时变量“OB1_PREV_CYCLE”这个值,如图所示.可是怎么累计?具体做法该怎么弄?请大侠们详细说说!

问题补充:
更正下,那个cPU的型号是314-1AG13-0AB0,模拟量模块,是331-7KF02-0AB0

图片说明:

有关OB1主程序扫描时间的累计   

最佳答案

可以考虑用OB35定时中断执行 (此方法最简单实用) 如果不想使用中断 也可以使用读取CPU系统时钟来实现
大概方法
 因为CPU一般都是MS级别扫描完程序,注意时间周期和信号之间的关系
  本次扫描系统时间= 当前系统时间
 累计时间= 本次扫描系统时间—上次扫描系统时间
 -------------根据你的要求编写相关的程序 
上次扫描系统时间=本次扫描系统时间
 
读取系统时间 转换 可以进行加减的 数据类型()
注意时间加减时候溢出的问题 就可以啦

提问者对于答案的评价:
谢谢

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月2日 下午4:22
下一篇 2018年12月2日

相关推荐