使用模拟RC低通滤波器的数字等式去除ADC噪声信号

很多系统都用一个     ADC   对温度和     压力传感器   产生的模拟数据进行采样。有时候,系统噪声或其它因素会使原本缓慢波动的数据乱跳起来。为了降低高频噪声,设计师经常会在     传感器   和模/数转换器级之间接一个模拟RC(     电阻器   -     电容器   )低通     滤波器   。但是,这种方法并不总是很理想或很实用。例如,要获得分钟级的时间常数,就需要非常大的R、C值。

 使用模拟RC低通滤波器的数字等式去除ADC噪声信号_设计制作_嵌入式技术

图1显示的是一个模拟RC低通滤波器以及它的设计公式。去除ADC线性范围内的噪声信号还有另一种方法,即使用模拟RC低通滤波器的数字等式。该滤波器的软件只有两行C代码:

LPOUT=LPACC/K,式中滤波器的输出值为LPACC除以一个常数。 LPACC=LPACC+L     PI   N-LPOUT,式中增加了输入与输出之间的差值以更新LPACC。所有变量均规定为整数。

模/数转换每获得一个新的输入采样LPIN时,软件都产生一个输出值LPOUT,它由一个经低通过滤的输入采样组成。常数K值的计算要根据系统的采样速率以及滤波器所需时间常数:K=T×SPS,其中K》1,而SPS是系统的采样速率。例如,对于一个采样速率为200次采样/秒的系统,所需时间常数为30秒时,常数K等于6000次采样。程序输入加上一个步长变化需要6000次采样,才能在输出端达到最终值的63%左右。

低通累加器LPACC对大的时间常数和大输入值而言可以增长到很大。它会增长到K与LPIN最大可能值的乘积。在这些情况下,需要保证LPACC不会溢出,并可能需要设定一个较大的数据类型来放置LPACC。为避免起动时长久的稳定时间,在开始采样循环以前,可以将LPACC初始化到K乘以     电流   输入值。

还可以扩充这个基本的滤波器概念,采用顺序执行多个滤波器代码段,使之适合于更高阶的滤波器,从而有更好的高频抑制性能。另外,还可以对LPACC使用数组变量,并用一组对应滤波器信号的常数K值乘以各通道采集的数据。

责任编辑:gt

28
115
0
24

相关资讯

  1. 1、豆瓣8.5!保守说这片肯定是年度国产前三1767
  2. 2、56岁周星驰罕见素颜近照曝光,低头微笑未露正脸鸭舌帽难掩白发4938
  3. 3、首个“30亿票房月”今日诞生堪比07年全年票房3319
  4. 4、11月网络剧备案:数量回升,《仙剑》《逆水寒》将翻拍3420
  5. 5、内地票房:《金刚狼2》破亿靠3D赢“甄功夫”3327
  6. 6、《神奇女侠2》正式进入烂片行列,烂番茄指数跌破及格线2857
  7. 7、惨!TVB《双面伊人》三次重播被临时抽起,皆因老戏骨不断离世3770
  8. 8、高云翔和女受害人的一个共同点:两人都在上海读过书1619
  9. 9、《第十一回》:迅哥演了四郎的戏,皆因《表演者言》?1551
  10. 10、好莱坞传奇诺曼·劳埃德去世,享年106岁1276
全部评论(0)
我也有话说
0
收藏
点赞
顶部