马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
一、背景
输入信号input分别颠末bp(带通滤波器)和bs(带阻滤波器)处置处罚后相加输出。分析输出信号的幅值和相位受到的影响。
根据上图公式推导可知,并联滤波器对输出的影响可以直接分析,带通滤波器与带阻滤波器在频域上的加和。
二、matlab仿真


利用matlab的fdatool筹划滤波器
- close all
- % 工作空间中导出SOS 和 G
- % 使用 sos2tf 转换为传递函数形式
- [b_bp, a_bp] = sos2tf(SOSpass, Gpass); % 带通滤波器
- [b_bs, a_bs] = sos2tf(SOSstop, Gstop); % 带通滤波器
- % % 获取滤波器的分子和分母系数
- % [b_bp, a_bp] = tf(bandpass); % 带通滤波器
- % [b_bs, a_bs] = tf(bandstop); % 带通滤波器
- % 频率响应
- fs = 48000; % 获取采样频率
- N = 4096 * 32; % 增加频率点数提高分辨率
- [H_bp, f] = freqz(b_bp, a_bp, N, fs); % 带通滤波器频率响应
- [H_bs, ~] = freqz(b_bs, a_bs, N, fs); % 带阻滤波器频率响应
- % 相加频率响应
- H_combined = H_bp + H_bs; % 复数形式直接相加
- % 绘制频率响应对比
- figure;
- % 1. 幅度响应对比
- % subplot(2, 1, 1);
- plot(f, 20*log10(abs(H_bp)), 'b', 'LineWidth', 1.5); hold on;
- plot(f, 20*log10(abs(H_bs)), 'g', 'LineWidth', 1.5);
- plot(f, 20*log10(abs(H_combined)), 'r', 'LineWidth', 1.5);
- title('幅度响应对比');
- xlabel('频率 (Hz)');
- ylabel('幅度 (dB)');
- legend('带通滤波器', '带阻滤波器', '滤波器相加');
- grid on;
- %%
- figure;
- % 2. 相位响应对比
- % subplot(2, 1, 2);
- plot(f, (angle(H_bp)), 'b', 'LineWidth', 1.5); hold on;
- plot(f, (angle(H_bs)), 'g', 'LineWidth', 1.5);
- plot(f, (angle(H_combined)), 'r', 'LineWidth', 1.5);
- title('相位响应对比');
- xlabel('频率 (Hz)');
- ylabel('相位 (rad)');
- legend('带通滤波器', '带阻滤波器', '滤波器相加');
- grid on;
复制代码
幅度影响:在200Hz和5000Hz有衰减的影响
相位影响:0Hz-200Hz(负)、200Hz-1kHz(正)、1kHz-5kHz(负)、5kHz-20k(正)
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |