回复:定时器复位的测试

醉书生

  • 帖子

    718
  • 精华

    25
  • 被关注

    18

论坛等级:侠士

注册时间:2004-06-13

普通 普通 如何晋级?

发布于 2011-05-23 01:40:40

42楼

楼主最近迷上定时器了,好象做过几个定时器的测试方案了
应该肯定楼主的研究是有积极意义的,至少经过这和系列的测试,楼主对定时器的各种应用不在话下了。

但是,“测试”是一个非常严肃的词(不是临时做个试验),特别是我们相通过测试得到一个普遍性的结论时。

首先有一套严密测试方法,该方法在理论上必须没有漏洞,其次是所采用的步骤(这里就是楼主的测试代码)能完全实现该理论,否则结果是不具有普遍意义的。

一、进行多个事件的比较测试时,一般不要放在一起并行测试,而应该分别将它们跟一个标准去比较。
在并行测试中,假设a事件测试方法的实现要产生误ea,b事件的实现方法产生误差eb,只有ea=eb时,才可以进行并行测试。否则要人为的修正测试方法引起的误差。
拿这个定时器的测试来说,“R复位”、“送0复位”等方法的,应该在一个单独的程序中现,跟标准的1ms定时器去比较,最后比较不同方法的误差值来得出谁的误差较大。
如果一定要将它们放在同一个程序中,必须保证每一个测试方法在每一个扫描周期所占的时间完全相等(这个实现起来相当麻烦)。
二、高精度的测试需要实时的观察结果,这里涉及到观察方法与观察时机
针对本例,有二点不足,一是不能通过在线监控来观察结果,应该在需要观察的地方将采集点输出到某个变量(下次采集时不能覆盖它,而是输出到另一个变量)
假设我们对测试结果允许的误是1ms,整程序扫描周期固定是10ms,并行测试中不同方法产生的误是1us,则只有在1000个扫描周期(大概是10秒)内观察到的结果才是有效的。
===============================
fanscs 有句话说的很对:我们看到的定时器只是表象。
实际上影响它的东西很多,基本上不可能靠PLC自己完成它的精确测试,因为它本身就是不确定的(绝对不要指望用它产生高精度的脉冲),不可能测出一个确定的结果来。其实我们只需要做一些简单的试验去理解手册上的那几句话就行了。
我们可以两上下两个方波:
上面一个是我们设定的100ms定时器(以自复位为例),它是一个周期在我们设定时间上下波动,占空比尽可能小的方波
下面一个是“扫描周期”(本次扫描到定时到下一次扫描到定时器的时间),扫描到定时器时,让这个方法是ON的状态
现在去考虑哪些事件会影响扫描周期(扫描周期又将影响定时周期),然后将两个方波不断的重复(往右画得很长),多观察几次就知道定时器的波动因素了。
生命存在的方式只有两种:腐烂或燃烧
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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