在 Matlab 中使用 SPTool 设计滤波器

信息处理 过滤器 matlab 过滤器设计 低通滤波器
2022-02-13 09:43:40

我目前正在学习 DSP,在我的课程中我们使用 Matlab。我的任务是使用具有以下规格的 SPTool 设计低通滤波器:

截止频率为 200hz 的低通 Kaiser 窗口 FIR 滤波器。

现在,当我打开 SPTool 并选择“新建”时,我得到了滤波器设计和分析窗口。我使用以下设置

  • 响应类型 = “低通”
  • 设计方法=“FIR”和“窗口”
  • 窗口 = “凯撒”

我想知道我应该在“Fs”和“FPass”字段中输入哪些值。我应用这个滤波器的信号是一个周期性的 100hz 波。

感谢您的任何反馈。

2个回答

“Fs”应设置为输入信号的采样率。希望您知道采样率是多少。如果你没有,说点什么。

您需要截止频率“Fc”为 200 Hz。这意味着 200 Hz 及以上的所有信号内容将被严重衰减。您需要将信号保持在 100 Hz,因此 100 Hz 需要在通带内(滤波器不会衰减的频率范围)。您可以将“Fpass”(您的滤波器将“通过”的最高频率)设为 100 Hz,但我会留出一点余量并将其设为 120 Hz,或类似的东西。我不熟悉 SPTool,但您可能需要告诉它衰减阻带频率的程度。你可以放任何东西,但通常 50 dB 或更多是好的。

通带和阻带之间的频率范围是“过渡带”。您制作的过渡带(相对于通带)越大,您的滤波器就越容易在不引入通带失真的情况下很好地衰减阻带。因此,这将成为将通带限制 Fpass 设置为 100 Hz 的一个论据,这将使您的过渡带宽 100 Hz。正如您希望开始看到的那样,设计过滤器涉及很多权衡。

约翰·史密斯,

您正在设计一个低通滤波器,这意味着您的滤波器将应用于(卷积)信号,从而衰减某些频率,并或多或少地保持其他频率不变。

因此,在低通滤波器中,通常这意味着您将滤除(严重衰减)“高”频率。您的fpass只是为你量化这个。高是多高?好吧,如果您想要 200 Hz 的“截止频率”,那么这通常意味着您希望将频率保持在大约 200 Hz 及以下,所以选择fpass为 200 赫兹。

但请记住,您通常有关于转换带宽的规范。如果您的滤波器无限锐利,您可以说您接受所有小于 200 的频率,并衰减所有高于 200 的频率。实际上,您可能希望接受所有小于 130 的频率,然后从 130 过渡到 200 ,然后严重衰减所有大于 200 的频率。

关于采样率,这实际上取决于您的模拟。如果您选择 10,000 Hz 作为采样率,那么您应该确保在对信号使用滤波器时,它也以 10,000 Hz 采样。

使用 MATLAB 很好。它是理解 DSP 概念的非常强大的工具。