恭喜,你发布的帖子
发布于 2018-01-08 14:27:34
10楼
测试结果分析:
1,同一个扫描,定时器的ET是不相同的,其ET值的刷新不是在扫描到定时器指令时刷新的。这一点可能
好多人都认为是在执行到定时器指令才刷新的,认为定时器就是一个FB块,FB块只有执行FB块才会刷新其背景数据块,其实不是这会事儿。从查找的官方资料中得知定时器的刷新:
S7-1200的定时器的时间更新发生在定时器功能框的Q点或ET连接变量时,或者在程序中使用背景DB(或IEC_TIMER类型的变量)中的Q点或者ET时。
参考链接:
http://www.ad.siemens.com.cn/productportal/Prods/S7-1200_PLC_EASY_PLUS/function/TIMER/TIMER.html
2,相同的一段程序其执行的时间也不相同,偏差还是蛮大的,就测试的一段程序来看,其循环结束时间
减去循环可开始时间,是循环段程序执行的时间,不同的循环周期有几十毫秒的差异,当然这是人为增大扫描周期才出现的现象,大部分程序扫描周期是几个毫秒到几十个毫秒,对逻辑控制没什么影响,这只是说明同一指令执行耗时在不同的扫描周期也是不完全相同。
精华帖版主置评:非常好。实测结果来说明问题。重点还是1200/1500的处理机制与从前不同。-yming
请填写推广理由:
分享
只看
楼主