【技术专辑】如何对方波进行低通滤波

本文是AAC模拟电路系列的一部分,当您需要消除数字信号中的高频噪声时,它提供了一个很好的选择。

 

滤波器通常在模拟信号的背景下讨论:消除音频噪声,RF系统中的信道选择或镜像抑制,医疗设备中的线路频率抑制,ADC电路中的抗混叠等等。然而,数字信号也会受到噪声的影响,虽然数字通信本质上比模拟通信更具抗噪性,但有时您可能希望在信号链的某个点清理数字波形。

 

一个可能的应用程序发生在我身上,因为我在最近的一篇文章中提到了如何实现曼彻斯特编码。我提出了一个基本电路(只是一个XOR门),可用于将普通数字信号转换为曼彻斯特信号,但我也指出XOR方法容易受到虚假转换的影响。然后我建议在某些情况下,系统可以通过低通滤波器克服这些(更高频率)杂散转换。

 

另一种情况是,当你使用SPI、I2C或UART在机器人的不同部分之间传输数据时,你可能想用低通滤波器过滤数字信号。机电设备或高电流驱动电路产生的瞬态噪声可能严重到足以在数字通信中产生偶尔(或不是偶然)的错误 - 我想象的是像连接在两个独立PCB之间的UART线那样的必须危险地靠近有刷直流电机。您可以通过过滤来抑制这种噪声,特别是如果您的数据传输要求允许您使用较低的数据率。

 

避免失真

 

您可能想知道为什么需要某种特殊的数字信号滤波器。与低通滤波模拟波形相比,数字波形的低通滤波有什么不同?

 

好吧,这一切都可以追溯到傅立叶变换。如果您居住在频域中,则数字波形实际上不是数字波形。它是一个长(理论上无限)序列的正弦曲线序列的组合,具有不同的频率和不同的振幅。当这些正弦曲线完全对齐时,结果是正常的方形(或矩形)波形。然而,当它们没有对齐时,你最终会得到一个扭曲的块状物,这不是真正的方波,但肯定不是正弦波。

 

我们来看一个例子。以下电路是四阶巴特沃斯低通滤波器(我使用ADI公司的“ 滤波器向导 ”来生成元件值):

 

【技术专辑】如何对方波进行低通滤波

 

这是频率响应:

 

【技术专辑】如何对方波进行低通滤波

 

如果我使用此电路滤波10 kHz方波,结果如下:

 

【技术专辑】如何对方波进行低通滤波

 

这里的问题是巴特沃斯滤波器不具有线性相位响应 - 换句话说,相移以不同频率经历不同时间延迟的方式改变。因此,方波中的频率分量在通过滤波器时不会保持对齐,最终结果是您在上升/下降沿看到的过冲/下冲。

 

上图中出现的过冲并不可怕,但随着周期的减少,波形的整体外观会恶化:

 

【技术专辑】如何对方波进行低通滤波

 

还要注意,随着滤波器的阶数增加,振铃将变得更加严重。

 

贝塞尔滤波器

 

我们可以使用贝塞尔滤波器来解决这个问题。在介绍中我说过这篇文章会提出一个“电路”,但这是不精确的,因为贝塞尔电路本身(即元件的排列)与巴特沃斯电路或切比雪夫电路没有什么不同。将二阶滤波器级转换为贝塞尔(或Butterworth或Chebyshev)滤波器的是组件值,其被计算以便创建对应于这些滤波器类型的频率响应。使用过滤表确定这些组件值是一项很好的智力练习,但在面向目标的工程的“现实世界”中,很难与上面提到的ADI工具等软件竞争。

 

贝塞尔滤波器针对线性相位响应进行了优化,这使其成为最小化数字信号振铃的理想选择。振铃,过冲,失真,稳定时间 - 这些都是我们在提到滤波数字波形的改变时可以使用的术语,但重要的是要记住这种改变的真正原因:非线性相位响应,它在两者之间产生时间间隔。构成方波的傅里叶频率。

 

以下电路有四个极点,与前一个极点相同,截止频率相同。然而,选择组件值以便创建贝塞尔响应而不是巴特沃斯响应。

 

【技术专辑】如何对方波进行低通滤波

 

这是一个波特图:

 

【技术专辑】如何对方波进行低通滤波

 

下图包括Butterworth和Bessel滤波器的时域波形; 你可以看到贝塞尔滤波器大大减少了失真。

 

【技术专辑】如何对方波进行低通滤波

 

结论

 

我们讨论了数字信号的低通滤波概念,然后我们研究了没有线性相位响应的滤波器产生的不良影响。我们通过引入贝塞尔滤波器得出结论,该滤波器针对线性相位响应进行了优化,并且显然可以减少时域波形中的振铃量。在本文中,我们将Sallen-Key拓扑用于二阶滤波器阶段,但也可以仅使用无源组件创建Bessel滤波器。

  • 【技术专辑】如何对方波进行低通滤波已关闭评论
    A+
发布日期:2019年03月04日  所属分类:参考设计