在Matlab中设计一个简单的带通/带阻滤波器

809
2023/9/20 9:48:29
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Matlab中设计一个简单的带通/带阻滤波器,可以使用函数fir1firpm来设计滤波器系数。以下是使用fir1函数设计一个带通/带阻滤波器的示例代码:

% 设计一个简单的带通/带阻滤波器
fs = 1000; % 采样频率
fcuts = [100, 200, 300, 400]; % 通/阻带边界频率
mags = [0, 1, 0]; % 通/阻带增益
devs = [0.01, 0.05, 0.01]; % 通/阻带允许波动范围
% 使用fir1函数设计滤波器系数
order = 64; % 滤波器阶数
b = fir1(order, fcuts/(fs/2), 'bandpass', 'cheby1', 'noscale');
% 绘制滤波器的频率响应
freqz(b, 1, 1024, fs);
% 使用滤波器滤波信号
% x = 输入信号
% y = filter(b, 1, x);

上述代码中,fs是采样频率,fcuts是通/阻带边界频率,mags是通/阻带增益,devs是通/阻带允许波动范围,order是滤波器阶数。使用fir1函数设计滤波器系数b,然后可以使用filter函数来应用滤波器。最后,使用freqz函数绘制滤波器的频率响应。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: matlab中importdata的使用方法是什么