深入理解单片机数字滤波,滤波器降噪底层原理
当我们进行录音的时候,往往是伴随着环境噪音的,所以就需要降噪处理,这时候滤波器就派上用场了。
比如我们人说话的频率在100赫兹到1200赫兹之间,那低于100赫兹和高于1200赫兹的频率对我们来说就是噪声。
所以专业的声音采集设备都要加上一个滤波器,这样就可以把噪音给滤出。
这是一个最简单的滤波器模型,它可以把低于100赫兹的噪音频率给滤除掉。为什么它可以把低频信号给滤除呢?
很简单,因为电容有隔直通交的特性,当直流电经过电容时,它相当于断路,而交流电的频率越高,越容易通过电容。
所以他能让高频信号通过,把低频信号拒之门外。
文章相对比较长,字数比较多,大家可以先打开头像关注我,之后慢慢看,///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以哦~点我头像左下角黑色字体加我也能领取哦。最近比较闲,带做毕设,带学生参加省级或以上比赛///
单片机主要作用是控制外围的器件,并实现一定的通信和数据处理。但在某些特定场合,不可避免地要用到数学运算,尽管单片机并不擅长实现算法和进行复杂的运算。下面主要是介绍如何用单片机数字滤波。
在单片机进行数据采集时,会遇到数据的随机误差,随机误差是由随机干扰引起的,其特点是在相同条件下测量同一量时,其大小和符号会现无规则的变化而无法预测,但多次测量的结果符合统计规律。为克服随机干扰引起的误差,硬件上可采用滤波技术,软件上可采用软件算法实现数字滤波。滤波算法往往是系统测控算法的一个重要组成部分,实时性很强。
采用数字滤波算法克服随机干扰的误差具有以下优点:
数字滤波无需其他的硬件成本,只用一个计算过程,可靠性高,不存在阻抗匹配问题。尤其是数字滤波可以对频率很低的信号进行滤波,这是模拟滤波器做不到的。
数字滤波使用软件算法实现,多输入通道可共用一个滤波程序,降低系统开支。
只要适当改变滤波器的滤波程序或运算,就能方便地改变其滤波特性,这对于滤除低频干扰和随机信号会有较大的效果。
在单片机系统中常用的滤波算法有限幅滤波法、中值滤波法、算术平均滤波法、加权平均滤波法、滑动平均滤波等。
那关键是这个临界点怎么算呢?
比如我们怎么确定它能滤掉的信号是低于100赫兹而不是1000赫兹呢?
这就涉及到滤波器的截止频率了,这是它的计算公式。
按照这个公式,我们去选择电阻电容的值,比如电阻是1000欧姆,电容为160nf。
这样他就能把低于100赫兹的频率出。
那是不是只要低于100赫兹的频率就完全没有了呢?
比如99赫兹就过不去,而101赫兹都可以完美地通过呢,完全不是这样的,这个滤波器对99赫兹和101赫兹的作用几乎是一样的。
其实99赫兹跟101赫兹都可以通过,这个滤波器的截止频率还有什么意义呢?
这就不得不提电子学常说的增益了。
这是它的计算公式。
即用他的输出电压信号比输入电压信号也可以看作是电路的放大倍数。
当处于截止频率时,他的增益为固定的0.707,这是他的幅频特性。
可以看出,当处于截止频率时,他的增益正好是0.707,意思就是此时输出的电压强度只有输入的70%。
比如我们输入100赫兹,幅值为10伏的电压。
则它输出电压将变为7伏的100赫兹的电压。
而低于这个频率的话,它的信号衰减的很严重。
而高于这个频率的话,信号将会得到加强。
比如当频率无穷大的时候,增益为一,也就是他的输出几乎和输入完全一样,这就是高通滤波器的作用,它能让高频信号通过。
如果从最根本上解释这个问题,我觉得用阻抗可以让你对他有更深的理解。
我们知道电阻对电流阻碍作用,所以用电阻表示对电流阻碍的大小,那电容也一样,他对交流的阻碍交容抗。这些统称为阻抗。
这是容抗的计算方式。比如当频率为零的时候,它的容抗是无限大的,这也印证了电容隔直流的特性。
容抗跟频率和电容容量都有关系。他的单位也是欧姆,这样我们就完成了电阻和电容的大一统。
比如刚才我们这个电路,我们可以把这两个看做电阻串联,比如我们还是输入十伏的100赫兹交流电。
则电容的容抗就是十欧姆的电阻,也是十欧母的花感觉电阻分压原理。
此时这一点输出的就是5伏的电压。
频率还是100合资,但电压衰减了一半,如果频率无穷大,则它的容抗是0欧姆,所以输出的波形几乎和输入波形完全一致。
对于频率特别高的波形可以完全通过,我们完全就可以把它看作一个电阻,它的底层逻辑还是之前都知道的电阻分压的原理。
这就是高通滤波器的实现原理,而这个是低通滤波器,它可以让低频信号通过,大家可以想想他是怎么实现的。
对单片机感兴趣的朋友可以找我,我录制了一些关于单片机的入门教程,有需要的童鞋找我拿就行,免费的,私信我“林老师”就可以拿~点击打开我的头像就能领取
联系客服