您现在所在的是:

PLC论坛

回帖:12个,阅读:2520 [上一页] [1] [2] [下一页]
8302
fujifa
文章数:2937
年度积分:235
历史总积分:8302
注册时间:2014/2/10
发站内信
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
发表于:2017/10/13 9:17:25
#10楼
以下是引用8453526862017/10/12 20:59:56的发言:
以下是引用cvlsam2017/10/12 20:30:04的发言:
以下是引用8453526862017/10/12 20:03:34的发言:
以下是引用cvlsam2017/10/12 19:37:24的发言:
以下是引用8453526862017/10/12 19:02:46的发言:
我可能没表达清楚!我说的意思是字的右移和左移,每次移一个字的位置!我想实现双字的右移和左移,每次移一个双字的位置!
每一秒依次左移或右移一个双字的位置,共十个位置!每秒平均一次!得一每秒更新一次的平均值!

你累加10次采集值除以10不就好了,反正是浮点数,又不需要考虑溢出的问题。

Good Luck~
这是读电表的实时功率做需量控制,打个比方如果要每秒累加一次要10个要十秒出一个平均值!
如果用右移指令每秒把数据右移一个字的位置,这样每秒都可以有10个数据可以求和做平均值!
如果要是一分钟60个数据做求和平均。前一种方式要一分钟才能得到一个平均值!而后一种在初始装满60个数据后,以后通过每秒右移一次先进后出!就可以每秒更新求得一个60个数据的平均值!

那你的描述不是要得到10个数的平均值,而是应该是A时间段到B时间段的采用平均值。

那需要移位干什么,间接寻址(或者称作变址)就可以了。

信捷的PLC抄三菱的,应该有变址的功能,且支持C语言,那么用数组的下标就可以了。

Good Luck~
我说的采样平均值方式就是和下面滤波的例子是一个意思!就通过移动才能实现先进先出求平均值!


《递推平均滤波法(又称滑动平均滤波法)》
   A、方法:
       把连续取N个采样值看成一个队列
       队列的长度固定为N
       每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则)
       把队列中的N个数据进行算术平均运算,就可获得新的滤波结果

有空去与前辈争论滤波表达方式还是什么毫无意义,有这点空去官网下载本手册问题都解决了!

虽然我不用信捷,为了彻底解决你的问题我不得不去信捷的官网下载了手册,其中有一页这样描述,当然前面前辈已经告诉你了,变址。
附件 snap1.jpg

如果你看了这段还是写不出来的话,我接受你的项目外包,因为我下载手册的同时也下载了软件,就这个问题的功能200元可以给你写的例程。

HAVE FUN!
8589
377809393
文章数:270
年度积分:759
历史总积分:8589
注册时间:2010/4/10
发站内信
发表于:2017/10/13 22:08:57
#11楼
汇川我没有用过,有没有块传送指令?相当于三菱的BMOV.
37237
cvlsam 版主
文章数:12401
年度积分:1589
历史总积分:37237
注册时间:2001/12/22
发站内信
2018论坛贡献奖
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011论坛贡献奖
2011国庆活动
2010论坛杰出贡献奖
发表于:2017/10/14 6:47:32
#12楼
以下是引用3778093932017/10/13 22:08:57的发言:
汇川我没有用过,有没有块传送指令?相当于三菱的BMOV.

摘录自《汇川小型PLC编程手册P76页》:
附件 snap1.jpg

Good Luck~

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

62.4004