回复:200Smart里面的定时中断长期运行下来可靠吗?

已锁定

xiatianyun

  • 帖子

    854
  • 精华

    10
  • 被关注

    25

论坛等级:奇侠

注册时间:2020-05-09

白金 白金 如何晋级?

发布于 2023-03-01 11:39:29

52楼

昨天又测试了定时器,得出几个结论:

比较的对象有这么几个:

1、利用BITime/CITime取得系统心跳次数来定时。

2、利用10ms定时器T33计数周期100ms(计数10次复位)产生1s脉冲,然后计数1s脉冲定时。

3、利用10ms定时器T34计数周期5s(计数30000次复位),累积5s的次数和T34当前值来定时。

4、利用10ms定时器T35计数周期100ms(计数10次复位),累积100ms的次数来定时。


设计一个负荷子程序,循环多次模拟负荷运行时间,这个负荷每隔200ms执行一次。200ms利用定时中断触发。

实验结果是:当负荷时间比较大,超过定时器2、4的计数周期100ms时定时器2、4变慢。当负荷时间小于2、4的计数周期100ms时(几个ms)定时器1、2、3、4定时一致。

无论怎样模拟负荷,定时器1、3都是一致的。由于不能模拟负荷周期超过500ms,所以定时器3在此种平台上可以认为是可靠的。

结论:利用脉冲周期计数来定时的准确性和程序扫描时间关系很大,要想有个可靠的定时最好程序扫描周期远小于计数周期。而利用BITime/CITime定时是可靠的,误差只和一个扫描周期有关,其他都有累积误差。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有9142条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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