和枫寄晚 发表于 2015-8-7 09:43:18

int Get_AD() {
return random(295, 305);
}

// 递推平均滤波法(又称滑动平均滤波法)
#define FILTER_N 12
int filter_buf;
int Filter() {
int i;
int filter_sum = 0;
filter_buf = Get_AD();
for(i = 0; i < FILTER_N; i++) {
    filter_buf = filter_buf; // 所有数据左移,低位仍掉
    filter_sum += filter_buf;
}
return (int)(filter_sum / FILTER_N);
滑动平均值滤波里面这一句没看懂   filter_buf = Get_AD();,这里不是只对filter_buf【12】赋值了吗,至于其他的还没有值,那么紧接着就进行for循环,进行移位累加最后除以12,结果不就成了filter_buf【12】/12了吗。。。
求解答,蟹蟹~~~
}

ly117 发表于 2015-8-19 15:19:14

收藏了,谢谢

jeffvivi 发表于 2015-8-24 09:05:10

// 限幅滤波法(又称程序判断滤波法)
#define FILTER_A 1
int Filter() {
int NewValue;
NewValue = Get_AD();
if(((NewValue - Value) > FILTER_A) || ((Value - NewValue) > FILTER_A))
    return Value;
else
    return NewValue;
}


/**********************/
对于限幅法,有个疑问~初始化之后AD的新老值都是0,那这段程序岂不是一直返回0?

shenhaiyu 发表于 2015-9-6 16:38:59

jeffvivi 发表于 2015-8-24 09:05 static/image/common/back.gif
// 限幅滤波法(又称程序判断滤波法)
#define FILTER_A 1
int Filter() {


太极端的情况了,加个判断限制一下就好了,这里只讨论算法

mrliming 发表于 2015-9-6 22:04:25

好东西,收下了

毒师老白 发表于 2015-9-20 21:54:13

你好,我看了你的卡尔曼滤波的帖子,但是我是菜鸟,没太看懂,最近我在做个东西,要对提取到的RSSI值进行卡尔曼滤波,您能仔细给我讲讲么

八爪鱼 发表于 2015-10-4 18:06:34

特别有用!学习了!楼主辛苦!

shenhaiyu 发表于 2015-11-24 15:12:57

八爪鱼 发表于 2015-10-4 18:06 static/image/common/back.gif
特别有用!学习了!楼主辛苦!

谢谢支持~~~~~~~~~~

EagleShi 发表于 2015-11-25 10:24:27

楼主你好,非常感谢分享,你上次称重的那个案例后来用了哪种滤波方法效果比较好,谢谢

siecnbj 发表于 2015-11-28 23:39:02

很好的材料,好好学习下。

guochaoxxl 发表于 2016-1-21 19:05:02

非常好的东西,其实我们很多人重视的是内容不是内涵阿,算法就成了稀缺品了。

方盛洲 发表于 2016-1-25 17:19:46

收藏慢慢读,好东西呢

redspider_002 发表于 2016-2-5 02:54:13

谢楼主分享

shenhaiyu 发表于 2016-3-17 09:45:53

redspider_002 发表于 2016-2-5 02:54 static/image/common/back.gif
谢楼主分享

谢谢支持~~~~~~~~~

dhydhj 发表于 2016-4-13 23:44:50

您好 请问您一阶滞后滤波程序中的a值的大小和滤波的频率有什么关系?

可不可以不用float型,让其扩大100倍后,结果再除以100?

很浅的问题,希望恢复,很着急,谢谢您
页: 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18 19
查看完整版本: 十大滤波算法程序大全(Arduino精编无错版)