回复:帮我看看,为啥这个子程序里面的时间跑的特别快。

已锁定

zbhdm

  • 帖子

    2109
  • 精华

    2
  • 被关注

    18

论坛等级:至圣

注册时间:2007-05-30

钻石 钻石 如何晋级?

发布于 2021-06-05 12:45:55

12楼

展开查看
以下是引用winter938在2021-06-05 08:19:46的发言 >10楼

      假设一程序扫描周期为1.4毫秒且是恒稳的周期,观察下面的数据

时刻       0  1.4  2.8  4.2  5.6  7

增量A         1     1     2     1    2(只对时刻的整数部分进行计算)

增量B         1     2     1     2    1  (对时刻数据小数部分四舍五入变成整数后进行计算)

      如果把增量AB拿来做累计都可以得到7这一结果,据此SMW22的数值采用的同样的获取方法的话楼主的程序应该是可以准确计时的。

      假设一程序扫描周期为0.4毫秒且是恒稳的周期,观察下面的数据

时刻       0  0.4  0.8  1.2  1.6  2

增量A         0     0     1     0    1(只对时刻的整数部分进行计算)

增量B         0     1     0     1    0  (对时刻数据小数部分四舍五入变成整数后进行计算)

      如果把增量AB拿来做累计都可以得到2这一结果,据此SMW22的数值采用的同样的获取方法的话楼主的程序也应该是可以准确计时的。

      问题就是SMW22的数值获取机制我们是不得而知的,尤其是后一种情形当扫描周期小于1毫秒时出现增量为0,此时是否还按上面的数据规律给出就有待验证了。如果不是楼主的程序计时在扫描周期小于1毫秒时会有问题。

明白了,再次感谢winter938老师的帮助。

努力学习西门子
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有9368条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。