的方式方法法

如何实现每隔3秒记一次脉冲。3秒和3秒之间无时间间隔,也就是这个3秒到了后下个秒紧接着计数

问题补充:
用定时中断做,产生了中断,我要在中断中做什么呢?请明示。如何“计数+1”是何意思呢。还有如何“自复位”呢
  补充:就是每隔3秒就读一次脉冲数,目的是要算出这3秒共产生了多少脉冲。
 我写的程序如下:
 Network 1 
 LD     SM0.1
 CALL   SBR1
 Network 2 
 LD     SM0.0
 MOVD   HC0, VD200
 Network 3 // 网络标题
 // 网络注释
 LD     SM0.0
 A      I0.7
 TON    T96, 0
 EU
 MOVD   HC0, VD104
 Network 4 
 LDW=   T96, 3000
 MOVD   HC0, VD100
 用了一个接通延时定时器,延时了3秒。当I0.7接通的时候,将脉冲数放入VD104,然后3秒后再踩一个脉冲数放入vd100中。这个方法不能实现循环接收脉冲啊。要求是,2秒的时候踩一个脉冲,5秒的时候再踩一个脉冲。下一次采就该从5秒到8秒的,8秒的到11秒的。可我的程序不能实现。我的只能是I0.7按下才采集脉冲,不按就不踩了,我想让他按以上的要求循环采集,而不通过人为的因为影响他采集。
 请帮忙
 

最佳答案

用s7-200还是比较麻烦的,主要再于3秒的时间窗口无法用定时中断做,时间太长了。
   如200ms,则可以在定时中断的处理程序中读取高速计数器的当前值,然后清零即可。
  看来您只能用定时器做,每3秒读取1次,然后清零计数器和定时器。由于扫描周期的缘故,会有10ms左右偏差。

  300则无此问题。
  
 用定时中断做,产生了中断,我要在中断中做什么呢?---读计数器当前值啊
 如何“计数+1”是何意思呢。-----有脉冲到达,计数器当前值就+1啊
 还有如何“自复位”呢-------将高电平送到计数器的reset端或复位定时器啊

 您的问题提的简单,脉冲频繁吗?大概频率范围?时间精度高吗? 这些很影响方法的。
 

提问者对于答案的评价:

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午1:59
下一篇 2021年7月5日 上午1:59

相关推荐

发表回复

登录后才能评论