首页 上一页 1 2 下一页 尾页

PLC某个输入点相临两个脉冲的时间间隔怎样计算(高速) 点击:7845 | 回复:26



lczi

    
  • 精华:0帖
  • 求助:2帖
  • 帖子:37帖 | 114回
  • 年度积分:0
  • 历史总积分:291
  • 注册:2006年11月26日
发表于:2010-11-01 16:54:15
楼主

在做个实验,想测量出PLC的某个输入点相临两个脉冲的时间间隔,由于是高速的,大概相隔时间小于15MS,不知道通过什么方式可是算出?相当于有个铁块从高出掉下,在落地之前通过两个固定点时能一个传感器分别感应到两个脉冲信号,如果能计算出两个脉冲时间间隔就能算出两点的之间的平均速度。

S7200或其它




尐お槑孨/叶宏

  • 精华:3帖
  • 求助:0帖
  • 帖子:114帖 | 3593回
  • 年度积分:0
  • 历史总积分:7688
  • 注册:2008年3月16日
发表于:2010-11-01 17:01:43
1楼
高速脉冲S7-200能处理,但不是常规方法了

chinaplc

  • 精华:2帖
  • 求助:0帖
  • 帖子:15帖 | 322回
  • 年度积分:0
  • 历史总积分:1101
  • 注册:2000年12月01日
发表于:2010-11-01 17:49:09
2楼
Haiwell(海为)PLC独有16us精度的系统时钟,通过中断捕捉功能可以精确计算某个输入点2次输入的时间间隔,可以到海为网站www.haiwell.com的【下载中心】下载“Haiwell_PLC示例程序”,其中包括一个程序“计算X输入的通断时间间隔.gpc”可以参考。

LN369

  • 精华:0帖
  • 求助:40帖
  • 帖子:305帖 | 1715回
  • 年度积分:0
  • 历史总积分:6747
  • 注册:2004年9月09日
发表于:2010-11-01 18:18:27
3楼

用200的高速计数器只计一个,测T32看看?精确到MS吧

lczi

  • 精华:0帖
  • 求助:2帖
  • 帖子:37帖 | 114回
  • 年度积分:0
  • 历史总积分:291
  • 注册:2006年11月26日
发表于:2010-11-01 19:56:34
4楼

常规办法肯定不行了,考虑用高速计数试试,不知道精确度怎样?海为的没接触过,不过以后可以用用,听说国产中还可以。目前买的是S7200。

zggongkongwang

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 12回
  • 年度积分:0
  • 历史总积分:193
  • 注册:2009年8月29日
发表于:2010-11-01 20:48:06
5楼
S7-200有脉冲时间捕捉,用它就行。

robotH

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 688回
  • 年度积分:0
  • 历史总积分:2433
  • 注册:2004年10月14日
发表于:2010-11-02 10:09:38
6楼

用高速定时器配合外部中断实现。以下是我用台达PLC编的一个范例。(S7-200同样道理可以实现,但S7-200没有0.1ms定时器,精度能差点)

robotH

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 688回
  • 年度积分:0
  • 历史总积分:2433
  • 注册:2004年10月14日
发表于:2010-11-02 10:27:56
7楼

以下是用S7-200程序(考虑到楼主手上只有S7-200)

主程序部分:

robotH

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 688回
  • 年度积分:0
  • 历史总积分:2433
  • 注册:2004年10月14日
发表于:2010-11-02 10:28:42
8楼

中断程序部分(输入为I0.0)

lczi

  • 精华:0帖
  • 求助:2帖
  • 帖子:37帖 | 114回
  • 年度积分:0
  • 历史总积分:291
  • 注册:2006年11月26日
发表于:2010-11-02 15:07:28
9楼

谢谢楼上!我来试试kan

hhhuihong

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 24回
  • 年度积分:0
  • 历史总积分:50
  • 注册:2008年8月30日
发表于:2012-03-06 11:34:27
10楼

           正好需要,按robotH的程序(s7-200)的试了下,没反应,细看了中断部分VW2只能为零!不知有没有试过的人或高手分析一下,谢谢!

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2012-03-06 12:40:06
11楼

说到200。我想我这个方法精度最高了。

用高速输出(pls指令)发出最高频率的脉冲,一直发,无需停。

然后启动高速计数器12模式。

然后把你上面说的铁块经过的这两个开关分别接到两个输入中断。两个输入中断,分别执行读取高计的当前值。

当铁块经过两个开关,得到两次中断对高计的读数后。你……知道后面干什么啦。

别以为200没有0.1毫秒的计时器会差过某些东西。

hhhuihong

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 24回
  • 年度积分:0
  • 历史总积分:50
  • 注册:2008年8月30日
发表于:2012-03-07 15:44:52
12楼
       芳工的思路对,现正是按此法做。如果要求不高的话,中断也可不用。

winter938

  • 精华:1帖
  • 求助:0帖
  • 帖子:55帖 | 945回
  • 年度积分:0
  • 历史总积分:3418
  • 注册:2005年6月12日
发表于:2012-03-07 16:26:37
13楼
注意输入中断的输入信号可调的最小滤波时间为0.2毫秒,所以开关触发的时间要大于此值

winter938

  • 精华:1帖
  • 求助:0帖
  • 帖子:55帖 | 945回
  • 年度积分:0
  • 历史总积分:3418
  • 注册:2005年6月12日

GIPENG-巨朋 PLC

  • 精华:0帖
  • 求助:0帖
  • 帖子:12帖 | 105回
  • 年度积分:0
  • 历史总积分:811
  • 注册:2011年5月12日
发表于:2012-03-08 00:19:29
15楼
引用 芳季 的回复内容:说到200。我想我这个方法精度最高了。用高速输出(pls指令)发出最高频率的脉冲,一直发,无需停。然后启动高速计数器12模式。然后把你上面说的铁块经过的这两个开关分别接到两个输入中断。两个输入中断,分别执行读取高计的当前值。当铁块经过两个开关,得到两次中断对高计的读数后。你……知道后面干什么啦。别以为200没有0.1毫秒的计时器会差过某些东西。


芳工说的这个方法是精度最高的方法,其他边沿触发的方法没法精确到0.01mS

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2012-03-09 16:46:33
16楼

回复内容:
对:hhhuihong关于       芳工的思路对,现正是按此法做。如果要求不高的话,中断也可不用。 内容的回复:



这位兄台。问一下,这个功能你用在什么场合的啊?

我见过有人用这个方法计算打桩机的锤击能量。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2012-03-09 17:04:19
17楼

引用<芳工说的这个方法是精度最高的方法,其他边沿触发的方法没法精确到0.01mS >

每个PLC都可以用这个方法达到本PLC的最高精度。没有内部高速记录的可以用外部接线。因为PLC的两个中断的迟滞时间一样。开始和停止的误差互相抵消。而脉冲时钟只是作为一个标尺,精度只看本PLC晶振精度了,精度无法限制。至于两个中断里面的程序都是一模一样的,都只有MOV指令,处理时间更是一样的。没有误差引入。所以这个方法的确可以达到最高的精度。

但是像三菱2N的plc内部高计当前值DD814X是处理end指令的时候才刷新的。显然精度要差一点。当扫描周期影响很大的时候,要改用D8099高速环形计数器会好一点,此计数器+1时间是0.1毫秒。可惜只能记录最大值3.2767秒,一下子就回头了,要做很多的技术处理。

到头来,要看两个接近开关的反应时间是否一致了。这个是瓶颈问题。可能用齿轮传感器的反应时间比较一致。因为他里面就只有磁铁和线圈。

芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2012-03-09 17:21:08
18楼
引用 hhhuihong 的回复内容:           正好需要,按robotH的程序(s7-200)的试了下,没反应,细看了中断部分VW2只能为零!不知有没有试过的人或高手分析一下,谢谢!



他的程序不知道为什么只有一个中断入口。楼主的程序明明是说要经过两个固定点。应该有两个中断入口啊。难道两个入口用同一个点?这样的话开关的关断时间可能会延长到下一个触发的话就失效了。

猫腻1987

  • 精华:0帖
  • 求助:4帖
  • 帖子:26帖 | 559回
  • 年度积分:0
  • 历史总积分:2789
  • 注册:2009年3月18日
发表于:2012-03-09 17:26:08
19楼
用高速中断来做哎   

lczi

  • 精华:0帖
  • 求助:2帖
  • 帖子:37帖 | 114回
  • 年度积分:0
  • 历史总积分:291
  • 注册:2006年11月26日
发表于:2012-03-19 09:59:32
20楼

好久没来论坛了。可能我没表达清楚,我的帖子是一个接近开关会接收到一块滑板上的两个固定点的信号(其实不该叫固定点),测量出这两个两个信号的输入间隔,robotH 的程序可行,不过中断程序里要主要把其它不要的网络删掉。芳工的 方法应该很好,不过是两个接近开关


热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 下一页 尾页