打印
[其他]

ADC采样滤波

[复制链接]
4476|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
koala889|  楼主 | 2021-11-22 16:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 koala889 于 2021-11-22 16:34 编辑

//递推平均滤波法(滑动平均滤波法)
  /*
   * description: 把连续取N个采样值看成一个队列,队列的长度固定为N,
   *              每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据(先入先出原则),
   *              把队列中的N个数据进行算术平均运算,就可获得新的滤波结果
   *              N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度:N=1~4
   * advantage: 对周期性干扰有良好的抑制作用,平滑度高,适用于高频震荡的系统
   * disadvantage: 灵敏度低,对偶然出现的脉冲性干扰的抑制作用较差,
   *               不易消除由于脉冲干扰所引起的采样值偏差,
   *               不适用于脉冲干扰比较严重的场合,比较浪费ram
   */
  #define N 12

char value_buf[N];
char i=0;

char filter()
{
     char count;
     int sum=0;
     value_buf[i++] = get_ad();
     if ( i == N )

     {

          i = 0;

     }
     for ( count=0;count<N,count++)

     {

         sum = value_buf[count];

     }
     return (char)(sum/N);
}

各位看看平时都是怎么处理ADC采集数据的?

使用特权

评论回复

相关帖子

沙发
littlelida| | 2021-12-6 15:44 | 只看该作者
取平均值?

使用特权

评论回复
板凳
chenjun89| | 2021-12-6 21:07 | 只看该作者
均值滤波是最简单的处理方式

使用特权

评论回复
地板
gouguoccc| | 2021-12-7 08:11 | 只看该作者
学习了

使用特权

评论回复
5
super何川| | 2021-12-9 18:16 | 只看该作者
如果信号很弱,可以把采样时间拉长,更准一些,然后再均值滤波

使用特权

评论回复
6
koala889|  楼主 | 2021-12-10 13:52 | 只看该作者
super何川 发表于 2021-12-9 18:16
如果信号很弱,可以把采样时间拉长,更准一些,然后再均值滤波

感觉均值滤波有点太简单了,
要寻求更好的方法了

使用特权

评论回复
7
lu50211| | 2021-12-11 08:34 | 只看该作者
平均值滤波,适用用大部分场合。

使用特权

评论回复
8
hjl2832| | 2021-12-16 08:22 | 只看该作者
楼主代码少写了一个+,应该是sum += value_buf[count],要说好用的数据采集滤波,我试过最好用的是卡尔曼滤波

使用特权

评论回复
9
koala889|  楼主 | 2021-12-28 09:40 | 只看该作者
hjl2832 发表于 2021-12-16 08:22
楼主代码少写了一个+,应该是sum += value_buf[count],要说好用的数据采集滤波,我试过最好用的是卡尔曼滤 ...

卡尔曼也用过,就是有的时候系数调整不好,反应慢,滤波效果很好

使用特权

评论回复
10
li880wert| | 2021-12-29 14:19 | 只看该作者
100次不够平均,用1000不够用10000,再不够上100000,平均解决

使用特权

评论回复
11
mollylawrence| | 2022-12-5 21:30 | 只看该作者
ADC采样数字滤波的吗?              

使用特权

评论回复
12
tabmone| | 2022-12-6 14:23 | 只看该作者
滤波算法很多种的。              

使用特权

评论回复
13
geraldbetty| | 2022-12-6 14:44 | 只看该作者
如何滤除信号的直流量呢?              

使用特权

评论回复
14
sheflynn| | 2022-12-6 16:43 | 只看该作者
滑动平均滤波法取多少个样点比较好?

使用特权

评论回复
15
weifeng90| | 2022-12-6 19:19 | 只看该作者
FPGA做数字滤波很方便

使用特权

评论回复
16
yangxiaor520| | 2022-12-12 19:57 | 只看该作者
简单点的平均值滤波,中位值滤波等。

使用特权

评论回复
17
AloneKaven| | 2023-1-3 16:27 | 只看该作者
FPGA做数字滤波很方便

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

85

主题

473

帖子

2

粉丝