理想滤波器、原型模拟滤波器和窗函数的特性matlab6
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验六《理想滤波器、原型模拟滤波器和窗函数的特性》1、实验内容
1、计算下列理想数字滤波器的单位冲激响应,并画出其频率响应和单位冲激响应,观察单位冲激响应波形的对称特性
1)理想低通滤波器,截止频率0.3π,群延时10
2)理想高通滤波器,截止频率0.65 π,群延时20
3)理想带通滤波器,下、上截止频率0.35 π、0.7 π,群延时15
2、画出下列原型模拟滤波器的幅度响应特性、相位响应特性和衰减特性,频率范围0—12000Hz (调用freqs),观察它们在通带、阻带、过渡带宽度、相位特性等方面的特点。
1)巴特沃斯低通滤波器,截止频率5000π,阶数5,调用butter
2)切比雪夫I型低通滤波器,截止频率5000 π,阶数5,通带波纹0.5dB,调用cheby1 3)切比雪夫II型低通滤波器,截止频率5000 π,阶数5,阻带衰减50dB,调用cheby2 4)椭圆滤波器,截止频率5000 π,阶数5,通带波纹0.5dB,阻带衰减50dB,调用ellip 3、编写程序画出下列窗函数的时域图形和频域特性(幅度dB表示和相位),与矩形窗函数
相比,观察它们在阻带最小衰减、主瓣宽带等方面的特点。
1)矩形窗,长度40
2)三角窗,长度40
3)升余弦窗,长度40
4)Blackman,长度40
2、编程原理、思路和公式
1、首先写出理想低通、高通、带通滤波器的频率响应,画出其频谱图,然后根据计算
得到的各滤波器的脉冲响应,写出它们的Matlab表达形式,画出脉冲响应图形。
三者的程序类似,只是在具体的频率响应和脉冲响应的形式上有所差别。
低通单位脉冲响应:
1,||
()
0,||
ja
j c LP
c
e
H e
ω
ω
ωω
ωωπ
-
⎧⎪
⎨
⎪⎩
≤
=
<≤
对应的单位脉冲响应为:
1
()()
2
sin[()] 11
2()
j j n
LP LP
ja j n c
h n H e e d
n a
e e d
n a
πωω
π
πωω
π
ω
π
ω
ω
ππ
-
-
-
=
-
==
-
⎰
⎰
高通单位脉冲响应为:
sin[()] ()
()
n a
n a
c
h n
HP n a
ω
π
=
-
=-
-
对应的单位脉冲响应为:
sin[()]sin[()] ()
()
H L
n a n a h n
BP n a
ωω
π
---
=
-
2、以butterworth低通滤波器为例,其余三种只是调用的函数不同而已,原理相同。首
先写出滤波器的阶数、截至频率,然后调用butter函数得到滤波器的系统函数,再调用freqs函数得到0-12000Hz范围内的频谱函数,最后画出幅度响应特性、相位响应特性和衰减特性的图形。
3、首先调用各种窗的Matlab函数生成各自的时域函数并画出时域图形,然后进行fft
变换得到频谱特性,再转化为幅度特性(db表示)和相位特性。各种窗的Matlab 函数是:矩形窗rectwin,三角窗triang,升余弦窗hanning,blackman窗blackman。
3、程序脚本,并注释
1、理想数字滤波器的频率响应和脉冲响应程序:
w=linspace(-pi,pi,10^4);delay=10; %确定数字角频率w的取值范围和群延时belta=exp(-j*delay*w);
Hjw_abs=zeros(1,10^4);
Hjw_abs(find(w>-0.3*pi&w<0.3*pi))=1;%频率响应的幅度取值
Hjw=Hjw_abs.*belta;%频率响应
Hjw_real=real(Hjw);
Hjw_imag=imag(Hjw);
Hjw_abs=abs(Hjw);
Hjw_angle=angle(Hjw);
figure,
subplot(2,2,1),plot(w,Hjw_real); %画出实部
grid on;
xlabel('数字角频率w');
title('理想低通滤波器频谱实部');
subplot(2,2,2),plot(w,Hjw_imag); %画出虚部
grid on
xlabel('数字角频率w');
title('理想低通滤波器频谱虚部');
subplot(2,2,3),plot(w,Hjw_abs); %画出幅度
grid on;
xlabel('数字角频率w');
title('理想低通滤波器频谱幅度');
axis([-4 4 -0.1 1.1])
subplot(2,2,4),plot(w,Hjw_angle); %画出相角
grid on;
xlabel('数字角频率w');
title('理想低通滤波器频谱相角');
%下面给出理想滤波器的脉冲响应
n=-20:40;%确定序号n的取值范围使图形具有对称性
h_n=0.3*(sin((n-10)*0.3*pi)+eps)./(0.3*(n-10)*pi+eps);%脉冲响应
figure,
stem(n,h_n);
grid on
xlabel('序号n');
title('理想低通滤波器单位冲激响应');
2、四种原型模拟滤波器的程序:
%下面是butterworth低通滤波器的特性
N=5;W=5000*pi/(2*pi);%确定滤波器阶数和截至频率
[b,a]=butter(N,W,'s');%butterworth模拟低通滤波器
f=0:12000; %确定频率范围
H=freqs(b,a,f);
H_abs=abs(H); %butterworth低通滤波器幅度响应