《IIR数字滤波器设计及软件实现实验报告.docx》由会员分享,可在线阅读,更多相关《IIR数字滤波器设计及软件实现实验报告.docx(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、试验报告试验四:IIR 数字滤波器设计及软件实现1. 试验目的(1) 生疏用双线性变换法设计 IIR 数字滤波器的原理与方法;(2) 学会调用 MATLAB 信号处理工具箱中滤波器设计函数或滤波器设计 分析丄具 fdatool设计各种 IIR 数字滤波器,学会依据滤波需求确定滤波器指标 参数。(3) 把握 IIR 数字滤波器的 MATLAB 实现方法。3通过观看滤波器输入输出信号的时域波形及其频谱,建立数字滤波的 概念。2. 试验原理TSIT IIR 数字滤波器一般承受间接法脉冲响应不变法和双线性变换法,应 用最广泛的是双线性变换法。根本设计过程是:先将给定的数字滤波器的指标 转换成过渡模拟滤
2、波器的指标;设计过渡模拟滤波器;将过渡模拟滤波器 系统函数转换成数字滤波器的系统函数。MATLAB 信号处理工具箱中的各种 IIR 数字滤波器设计函数都是釆用双线性变换法。第六章介绍的滤波器设计函数 butter、chebyl、cheby2 和 ellip 可以分别被调用来直接设计巴特沃斯.切比雪 夫 1、切比雪夫 2 和椭圆模拟和数字滤波器。本试验要求读者调用如上函数直接 设计 IIR 数字滤波器。本试验的数字滤波器的MATLAB 实现是指调用MATLAB 信号处理工具箱函数 filter对给定的输入信号xn进展滤波,得到滤波后的输出信号yno3. 试验内容及步骤(1) 调用信号产生函数 m
3、stg 产生由三路抑制载波调幅信号相加构成的复合 信号 st,该函数还会自动绘图显示 st 的时域波形和幅频特性曲线,如图 1041 所示。山图可见,三路信号时域混叠无法在时域分别。但频域是分别的,所以可 以通过滤波的方法在频域分别,这就是本试验的口的。(b) s(t)的频谱厶;亠 亠;dLI -. aaa-I- -aa020040060080010001200 U001600 18002023f7Hz图 10.4.1 三路调幅信号 st 的时域波形和幅频特性曲线(2) 要求将 st 中三路调幅信号分别,通过观看 st 的幅频特性曲线,分别确 定可以分别 st 中三路抑制载波单频调幅信号的三个
4、滤波器(低通滤波器、带通 滤波器、高通滤波器)的通带截止频率和阻带截止频率。要求滤波器的通带最大 衰减为”阻带最小衰减为 60dBo提示:抑制载波单频调幅信号的数学表示式为s(/) = cos(2/)cos(2X0 = +cos(2/r( - 九“)+ cos(2;r( + 儿)小 其中,cos(2 和刀称为载波,仁为载波频率,cos(2/)称为单频调制信号,fo 为 调制正弦波信号频率,且满足 m 山上式可见,所谓抑制载波单频调幅信号, 就是 2 个正弦信号相乘,它有 2 个频率成分:和频+人和差频 f 厂仏,这 2 个 频率成分关于载波频率 fc 对称。所以,1 路抑制载波单频调幅信号的频
5、谱图是关 于载波频率 fc 对称的 2 根谱线,其中没有载频成分,故取名为抑制载波单频调幅 信号。简洁看出,图 10.4.1 中三路调幅信号的载波频率分别为 250Hz、500Hz、 1000Hz o 假设调制信号 m(t)具有带限连续频谱,无直流成分,则 5(/) = cos(2”/)就是一般的抑制载波调幅信号。其频谱图是关于载波频率 fc 对称的 2 个边带(上下边带),在专业课通信原理中称为双边带抑制载波(DSB-SC) 调幅信号,简称双边带(DSB)信号。假设调制信号 m(t)有直流成分,则s(t) = mcos(2 行刀就是一般的双边带调幅信号。其频谱图是关于载波频率 fc 对称的
6、2 个边带(上下边带),并包含载频成分。(3) 编程序调用 MATLAB 滤波器设计函数 ellipord 和 ellip 分别设计这三个椭 圆滤波器,并绘图显示其幅频响应特性曲线。(4) 调用滤波器实现函数 filter,用三个滤波器分别对信号产生函数 mstg 产 生的信号 st 进展滤波,分别出 st 中的三路不同载波频率的调幅信号 yi(n). y(n) 和 y3(n),并2绘图显示 yl(n) y2(n)和 y3(n)的时域波形,观看分别效果。4. 信号产生函数 mstg 清单function st=mstg%产生信号序列向量 st,并显示 st 的时域波形和频谱%st=mstg 返
7、回三路调幅信号相加形成的混合信号,长度 N=1600 N=1600 %N 为信号 st 的长度。aFs=10000;T=l/Fs;Tp=N*T; %釆样频率 Fs=10kHz, Tp 为采样时间 t=O:T:(N-l)*T;k=O:N- l;f=k/Tp;fcl=Fs/10;fml=fcV10; fc2=Fs/20;fm2=fc”L0;%第 1 路调幅信号的载波频率 fcl=1000Hz, %第 1 路调幅信号的调制信号频率 fml=100Hz%第 2 路调幅信号的载波频率 fc2=500Hz%第 2 路调幅信号的调制信号频率 fm2=50Hzfc3=FsA0;%第 3 路调幅信号的载波频率
8、fc3=250Hz, fm3=fclO;%第 3 路调幅信号的调制信号频率 fm3=25Hz xtl=cos(2*pi*fml*t).*cos(2*pi*fcl*t); %产生第 1 路调幅信号Xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %产生第 2 路调幅信号Xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %产生第 3 路调幅信号 st=xtl+xt2+xt3; %三路调幅信号相加fxt=fft(st,N);%计算信号 st 的频谱%=以下为绘图局部,绘制 st 的时域波形和幅频特性曲线subplot(3,l,l)Aplot(t,s
9、t);grid;xlabel(t/s”);ylabel(”s(t)”);axis(0,Tp/8,min(st),max(st);title(”(a) s(t)的波形”) subplot(3,l,2)stem(f,abs(fxt)/max(abs(fxt),T);grid;title(”(b) s(t)的频谱”) axis(0,Fs/5,0,);xlabelCf/Hzlylabef 幅度”)5. 试验程序框图如图 1042 所示,供读者参考。6. 思考题图 10.4.2 试验 4 程序框图(1) 请阅读信号产生函数 mstg,确定三路调幅信号的载波频率和调制信号频率。(2) 信号产生函数 mst
10、g 中釆样点数 N=800,对 st 进展N 点 FFT 可以得到 6 根抱负谱线。假设取 NJ000,可否得到 6 根抱负谱线为什么 N-2023 呢请转变 函数 mstg中采样点数N 的值,观看频谱图验证您的推断是否正确。(3) 修改信号产生函数 mstg,给每路调幅信号参加载波成分,产生调幅AM信号,重复本试验,观看 AM 信号与抑制载波调幅信号的时域波形及其频谱的差 别。提示:AM 信号表示式:5r = l + cos2/cos2/。试验结果:一、滤波器参数及试验程序清单滤波器参数选取观看图 10.4.1 可知,三路调幅信号的载波频率分别为 250Hz、500Hz、lOOOHZo 带宽
11、也可以由信号产生函数 mstg 清单看出分别为 50Hz、100Hz、200Hz。所 以,分别混合信号 st 中三路抑制载波单频调幅信号的三个滤波器低通滤波器、 带通滤波器、高通滤波器的指标参数选取如下:对载波频率为 250Hz 的条幅信号,可以用低通滤波器分别,其指标为带截止频率 =280HZ,通带最大衰减勺=O.ldBdB;阻带截止频率=450Hz,阻带最小衰减 a, =60dBdB,对载波频率为 500Hz 的条幅信号,可以用带通滤波器分别,其指标为/u带截止频率fpl =440 HZ, f=560HZ,通带最大衰减 a=0.1dBdB;p阻带截止频率九=275 Hz, fsli = 9
12、00 Hz , Hz,阻带最小衰减a, =60dBdB,I对载波频率为 1000Hz 的条幅信号,可以用高通滤波器分别,其指标为带截止频率fp =890Hz,通带最大衰减勺,=0.1dBdB:阻带截止频率犬=550Hz,阻带最小衰减冬=60dBdB,说明:1为了使滤波器阶数尽可能低,每个滤波器的边界频率选择原则是 尽量使滤波器过渡带宽尽可能宽。(2) 与信号产生函数 mstg 一样,釆样频率 Fs=10kHzoA(3) 为了滤波器阶数最低,选用椭圆滤波器。依据图 10.4.2 所示的程序框图编写的试验程序为。2、试验程序清单%IIR 数字滤波器设计及软件实现 clear all;clear a
13、ll;%调用信号产生函数 mstg 产生乂三路抑制载波调幅信号相加构成的复合信号 st;% st=mstg;%低通滤波器设计与实现Fs=10000;fp=280;fs=450;%wp=2*fp/Fs;ws=2*fs/Fs;rp=;rs= 60 ;%DF 指标;(低通滤波器的通阻带边界频率)N/wpO=ellipord(wp/ws,rp,rs);%调用 ellipod 计算椭圆 DF 阶数N 和通带截止频 率wp/z/B A=ellip(N,rp rs,wpO);%调用 ellip 计算椭圆带通 DF 系统函数系数向量B 和A ylt=filter(B A,st);%滤波器的软件实现%下面为绘图
14、局部figure(2); subplot(2,l,l); Hl/w=freqz(B/A/1000);m=abs(Hl);plot(w/pi,20*log(m/max(m);grid on; titled 氐通滤波损耗函数曲线”); axis(0,1,-300,20);xlabelCw/pi”bylabelCHl”);subplot(2,l,2); css=0:1600:”低通滤波后的波形”); axis(0,);xlabelCt/s”bylabelCylt”);%下面为尝试局部%N=1600; %N 为信号 st 的长度。%Fs=10000;T= l/Fs;Tp=N*T; %采样频率 Fs=1
15、0kHz, Tp 为采样时间 %t=O:T:(N- l)*T;k=O:N-l;f=k/Tp;%figure(5)%stem(k abs(fft(ylt1600)/max(abs(fft(ylt,1600)/.”);grid;title(”(b) s(t)的频谱/”);axis(0,Fs50j);%带通滤波器的实现与设计fpl=450;fpu=560;fsl=275;fsu=900; wp=2*fpl/Fs,2*fpu/Fs; ws=2*fsl/Fs/2*fsu/Fs;rp=;rs=60; N,wpO=ellipord(wp/ws/rp,rs); B,A=ellip(N,rp,rs/wpO);y
16、2t=filter(B,A,st); figure(3);i subplot(2,l,l);出乙 w=freqz(B,A,1000);m=abs(H2); plot(w/pi/20*log(m/max(m);grid on;axis(0,1,-300,20);titleC 带通滤波损耗函数曲线少xlabel(,w/pi,);ylabel(,H2,); subplot(2,l,2);plot(ss,y2t);title(”带通滤波后的波形 );axis(0,);xlabeirt/s”);ylabel(V2t”);%拓通滤波器的实现与设计fp=890;fs=600;wp=2*fp/Fs;ws=2*
17、fs/Fs; rp=;rs=60;N,wpO=ellipord(wp/ws/rp,rs);B,A=ellip(N,rp,rs y3t=filter(B,A,st); figure(4); subplot(2,l,l);/wpO/,high,);H3/w=freqz(B,A,1000); m=abs(H3);plot(w/pi/20*log(m/max(m);grid on;title(雋通滤波损耗函数曲线”);axis(0,1,-250,20);xlabel(,wI);ylabel(,H3,); subplot(2,l/2);plot(ss,y3t);title(”高通滤波后的波形”);axi
18、s(0,);xlabel(”t/s”);ylabel(V3t); clc;clear二、试验程序运行结果试验 4 程序运行结果如下图。山图可见,三个分别滤波器指标参数选取正确,算耗函数曲线到达所给指标。分别出的三路信号 yl(n), y2(n) 和 y3(n)的波形 是抑制载波的单频调幅波。礬 (OQP)趙损耗函数曲线(a) 低通滤波器损耗函数及其分别岀的调幅信号 yi(t)损耗函数曲线_ 0 g -20 龜-40-60 & -00.10.20.30.40.50.60.70.30.9180(b) 带通滤波器损耗函数及其分别出的调幅信号 y2(t)mp)豊损耗函数曲线1匕 0 A100.010.
19、020.030.04t/s0.050.060.07(c) 高通滤波器损耗函数及其分别出的调幅信号 y3(t)三. 思考题及简答:(1) 请阅读信号产生函数mstg,确定三路调幅信号的载波频率和调制信号 频率。如上试验截图所示。(2) 信号产生函数 mstg 中采样点数 N=800,对 st 进展N 点 FFT 可以得到 6 根抱负谱线。假设取 NJOOO,可否得到 6 根抱负谱线为什么 NPOOO 呢请转变 函数 mstg 中采样点数N 的值,观看频谱图验证您的推断是否正确。3 修改信号产生函数 mstg,给每路调幅信号参加载波成分,产生调幅AM 信号,重复本试验,观看 AM 信号与抑制载波调
20、幅信号的时域波形及其频谱的差 别。答:分析觉察,由于st 的每个频率成分都是 25Hz 的整数倍。采样频率 Fs=10kHz=25X400Hz,即 在 25Hz的正弦波的 1 个周期中采样 400 点。所以,当N 为 400 的整数倍时肯定 为 st 的整数个周期。因此,釆样点数N=800 和 N=2023 时,对 st 进展N 点 FFT 可以得到 6 根抱负谱线。假设取 N=1000,不是 400 的整数倍,不能得到 6 根理 想谱线。四. 试验总结:通过本次关于 IIR 数字滤波器的设计及软件实现试验,我们可以学到关于如 何在MatLab 软件上实现数字滤波器的设计与实现对现实数字波形的滤波处理。 生疏用双线性变换法设计 IIR 数字滤波器的原理与方法,学会调用 MATLAB 信号 处理工具箱中滤波器设计函数或滤波器设计分析工具 fdatool设计各种|R 数 字滤波器,学会依据滤波需求确定滤波器指标参数。把握 HR 数字滤波器的 MATLAB 实现方法。通过观看滤波器输入输出信号的时域波形及其频谱,建立数 字滤波的概念。