LOTO虚拟示波器软件功能演示之——FIR数字滤波
2022-04-06 来源:eefocus
在此之前我们先来了解一下带通滤波和带阻滤波。我们都知道每个信号是不同频率不同幅值正弦波的线性叠加,为了方便直接得观察到这种现象,就有了频谱分析(FFT),频谱分析就是将信号中不同频率不同幅值的正弦波表示出来。频谱分析的横坐标是频率,纵坐标是幅值,这样就可以在频谱分析中看出组成一个信号的多个正弦波的性质(频率和幅值)。如图1,上部分是时域的波形,下部分是频域中的波形。带阻滤波和带通滤波针对的是频域下的频率,如果要将某个频率范围内的信号去除掉,我们就要用到带阻滤波,只需在FIR数字滤波界面输入要去除的频率范围,点击SET,便会将这一频率范围内的波形去除掉。带通滤波则相反,它会留住在所选频率范围内的信号。即让频率范围内的信号通过不被滤除,所以称它为带通滤波。
图1.信号的时域波形和频域波形
现在我们来看在LOTO示波器OSCA02上位机上如何使用FIR数字滤波功能。在上位机右边会有一个绿色的FIR按键,如图2。右击之后会弹出一个调试窗口,窗口右侧第一行数据是当前采样率,下一行是FFT采样点数,然后是频率的分辨率,如图3。Band-Pass是带通滤波设置框,Fl是允许通过信号的最低频率,FU是允许通过信号的最高频率。Band-Stop是带阻滤波设置框,F1是要滤除信号的最低频率,F2是滤除信号的最高频率,在F1-F2频率范围内的信号都会被滤除掉。
图2.FIR按键位置
图3.数字滤波调试窗口
FIR数字滤波功能默认是不开启的。现在我们举个简单的例子,在通道A上输入一个1KHZ的标准方波,启用滤波功能。
带通滤波可以将Fl默认选成零,其实就是一个低通滤波,它只限制上限频率。然后如果反过来,Fu选择很大,比带宽还高 ,那它就是一个高通滤波。两个频率都选,它就是带通滤波,这可以涵盖三种情况。
现在这是1KHZ的方波,默认用带通滤波,上限频率设成1兆,然后把A、B通道都选上,点击set,就开始滤波了,但是这是一个低通滤过,从直流一直到一兆(1000k)的频率范围内的信号都保留,比一兆高的频率信号,就被滤除掉了。现在波形没什么变化,其实是因为原来的信号本身只有1k,而滤波保留了0-1兆范围内的信号,所以看不出来太多效果。那我们将上限频率选为10k,滤波后的波形如图4所示,上限频率选为2K,滤波后的波形如图5所示,完全变成正弦波了,一个方波,当我们把它的低通设到只有2k以内的频率可以通过的话,它就是一个正弦波。
图4.低通上限频率为10K的滤波波形
图5.低通上限频率为2K的滤波波形
现在我们将上限频率设的高一些,设到40k、400k分比对应下图
图6.上限频率是40K的滤波波形
图7.上限频率是400K的滤波波形
那针对上面测的这个现象,我们可以用一个教学视频演示视频演示一下(https://www.bilibili.com/video/BV1He411x7XT?from=search&seid=14215701365664195673)我们现在来看这个视频
刚开始是一个正弦波,这算是一个基波,和上面滤波的顺序是反过来的, 可以看到,它叠加了另一个正弦波的时候、叠加了三次谐波的时候、叠加了五次谐波、
9次、11次,它的谐波多了以后,会越来越逼近方波
数字滤波有一个作用是滤波,去掉噪声, 另一个是去掉一个信号里面特定的频率成分,还有一种是带宽限制,就是示波器上用的带宽限制。
关于去除噪声,我们现在举个例子,我们故意输入一个有噪声的波形,它本来是一个纯净的正弦波,可能在环境中受影响或者是它的接地受到干扰也有可能是电磁辐射,总之它会有一个很高的噪声 。我们以前处理这种噪声,我们用高分辨率模式就好,选高分辨率模式可以起到滤波的作用。现在是峰峰值模式,该模式下的波形是最真实的样子,我们现在利用FIR数字滤波功能,滤掉信号中的杂波。
打开FIR按键,我们看数字滤波,首先要选一些参数, 但是我们并不知道选什么参数,我们只知道原始信号的频率是1KHZ,上面叠加了一些别的频率的噪声。此时我们可以借助FFT功能 ,打开频谱分析,你可以看到B通道黄色这边会有一个1k的基波,它为什么会有噪声呢?我们看到在后面在不同的频率点上会有一些干扰,为了方便观察,我们用对数轴,如图8.
图8. 频谱分析的对数显示
可以看到,大概从56k开始,到327k ,这些就是叠加在原始信号上面的高频噪声,那我们要去滤波的话,我们可以选择在20k的位置,20k以后的所有的频谱分量我们全部不要,因为这些我们认为是噪声。那我们做一个20k的低通滤波就好了,带通滤波从0-20K,点击设置,我们会发现噪声都被滤掉了,如图9.
图9. 低通滤波示意图
这就是能测到的杂波分量的滤波,但是对于示波器测不到的杂波信号怎样处理呢?下面我们来讨论带宽限制,我们选一个时间档位,这时候,采率是12.5兆,根据香农采样定理,6兆以上的信号我们是测不到的,但是6兆以上的噪声有可能会对原始信号有影响,那我其实就把带宽限制到6兆,就会有一个0-6兆的低通滤波,保证在能测到的信号范围内进行分析。这样就可以做到带宽限制。台式的示波器,它的带宽限制可能只有几个选项,二十兆的带宽限制或一百兆的带宽限制。我们LOTO示波器可以用FIR数字滤波的功能选不同的带宽系数。
现在我们来看带阻滤波的功能,打开FFT频谱分析,我们明确地知道噪声的范围,大概是600K到5000K之间,如图10所示,那我们就用带阻滤波把600k到5000K之间的信号滤掉。
图10. 带阻滤波操作示意图
这就是带阻滤波,把想要去除的频率范围内的信号滤掉。滤波后的波形如图11
图11. 带阻滤波效果图
再来看最后一个例子,如图12,像这个波形,峰峰值模式和高分辨率模式都会显示所有的噪声和尖刺。
图12 . 多种频率混合的信号
先看一下这个信号的频谱分析,有个300k的正弦波,上面又叠加了一个600k左右的正弦波,一个1.2兆的正弦波, 然后又有一个2.5兆的正弦波,低频还有一个5k的正弦波, 通过频谱分析,我们知道这个信号是由这么多不同频率,不同幅值的正弦波叠加而来的。如果我们说,本来发出的是一个300k的正弦波,但是其他的这些干扰噪声并不是我们想要的,那这样我们就设置一个带通滤波,只保留300k附近的,比如我们设置带通滤波从100k到500k之间,你就会发现这就是一个300k的正弦波,其他的都是干扰,如图13.
图13. 带通滤波示意图
带通滤波和带阻滤波可以组合着启用,带通里面可以有一段是带阻的。可以根据波形的频谱的特性,来选择搭配进行数字滤波。
还有一个新功能是总谐波失真度,假如说A通道加了一个2k的正弦波,打开频谱分析,它会在这儿自动的算它的各个频率分量。然后把这个点开,如图14.它就会算总谐波失真度。总谐波失真度,是来描述正弦波标不标准,失真的程度有多少,一般1%以下的基本上是ok的。
图14.总谐波失真度演示
这个波形的总谐波失真度是在1%以下,表示失真在可以接收的范围内。