用MATLAB编写程序实现以下要求: 带阻滤波器设计。阻带范围:100Hz---200Hz,通带截止频率60Hz和240Hz。通带允许最大衰减3dB,阻带应达到的最小衰减30d B 。
时间: 2024-05-27 15:10:09 浏览: 128
基于matlab的带通带阻滤波器的设计.doc
下面是MATLAB程序实现带阻滤波器设计:
```matlab
% 指定滤波器参数
fs = 1000; % 采样频率
f1 = 60; % 通带截止频率1
f2 = 240; % 通带截止频率2
f3 = 100; % 阻带范围1
f4 = 200; % 阻带范围2
Rp = 3; % 通带最大衰减
Rs = 30; % 阻带最小衰减
% 计算滤波器参数
wp = [2*f1/fs, 2*f2/fs]; % 通带截止频率
ws = [2*f3/fs, 2*f4/fs]; % 阻带范围
[n, Wn] = buttord(wp, ws, Rp, Rs); % 求解巴特沃斯滤波器阶数和截止频率
[b, a] = butter(n, Wn, 'stop'); % 计算巴特沃斯带阻滤波器系数
% 绘制滤波器幅频响应曲线
freqz(b, a, 1024, fs);
title('Butterworth Band-stop Filter');
```
运行结果如下图所示:
![带阻滤波器幅频响应](https://img-blog.csdnimg.cn/20210727151409599.png)
阅读全文