机电工程学院实验报告课程名称:测试信号分析与处理实验项目名称:实验七基于MATLAB的IIR数字滤波器设计实验时间:2017/10/19班级:测控141姓名:罗瑞恒学号:201311501124实验目的:1.进一步熟悉IIR数字滤波器的理论知识;2.熟悉与IIR数字滤波器设计有关的MATLAB函数;3.学会通过MATLAB,利用脉冲响应不变法和双线性变换法设计IIR数字滤波器,加深对数字滤波器的常用指标和设计过程的理解。实验环境:计算机,MATLAB软件实验内容及过程:1.设计MATLAB程序,采用脉冲响应不变法设计一个巴特沃斯低通数字滤波器,其通带上限临界频率为400Hz,阻带临界频率为600Hz,抽样频率是1000Hz,在通带内的最大衰减为0.3dB,阻带内的最小衰减为60dB,并绘出幅频特性曲线。2.设计MATLAB程序,采用双线性变换法设计一个巴特沃斯低通数字滤波器,要求在通带[0,0.2π]内衰减不大于3dB,在阻带[0.6π,π]内衰减不小于40dB,并绘出幅频特性曲线。实验结果及分析:1.设计MATLAB程序,采用脉冲响应不变法设计一个巴特沃斯低通数字滤波器,其通带上限临界频率为400Hz,阻带临界频率为600Hz,抽样频率是1000Hz,在通带内的最大衰减为0.3dB,阻带内的最小衰减为60dB,并绘出幅频特性曲线。程序:fp=400;%通带上限临界频率fs=600;%阻带临界频率Rp=0.3;%通带允许的最大衰减Rs=60;%阻带允许的最小衰减Fs=1000;%采样频率Wp=2*pi*fp;%通带截止频率Ws=2*pi*fs;%阻带截止频率成绩:指导教师(签名):%Nn=256;n=(0:100-1);%采样点数[N,Wn]=buttord(Wp,Ws,Rp,Rs,'s');%用于计算阶数和截止平率成绩:指导教师(签名):[b,a]=butter(N,Wn,'s');%计算分子向量b,分母向量aw=linspace(1,400,100)*2*pi;%起始值,终止值,元素个数H=freqs(b,a,w);%在[0,2π]上进行采样,采样频率点由矢量w指定figure(1);%控制画图的窗口plot(w/(2*pi),20*log10(abs(H)));%画幅频特性图title('巴特沃斯模拟滤波器幅频特性');xlabel('频率/Hz');ylabel('幅度/db');%[bz,az]=impinvar(b,a,Fs);%caiyong冲击响应不变法转换为数字滤波器运行结果:2.设计MATLAB程序,采用双线性变换法设计一个巴特沃斯低通数字滤波器,要求在通带[0,0.2π]内衰减不大于3dB,在阻带[0.6π,π]内衰减不小于40dB,并绘出幅频特性曲线。程序:Fs=1000;%采样频率为周期倒数Wp=400*pi;Ws=600*pi;%设置归一化通带和阻带截止频率Ap=1;As=25;%设置通带最大和最小衰减[N,Wc]=buttord(Wp,Ws,Ap,As,'s');%调用buttord函数确定巴特沃斯滤波器阶数[B,A]=butter(N,Wc,'s');%调用butter函数设计巴特沃斯滤波器W=(0:pi:1000*pi);%指定一段频率值[D,C]=bilinear(B,A,Fs);%调用双线性变换法W=(0:0.001*pi:pi);Hz=freqz(D,C,W);%返回频率响应plot(W/pi,abs(Hz)/abs(Hz(1)));%绘出巴特沃斯数字低通滤波器的幅频特性曲线gridon;title('巴特沃斯数字滤波器(双线性变换法)');xlabel('频率/Hz');ylabel('归一化幅值');运行结果:实验心得:通过这次实验我进一步熟悉IIR数字滤波器的理论知识;熟悉与IIR数字滤波器设计有关的MATLAB函数;学会通过MATLAB,利用脉冲响应不变法和双线性变换法设计IIR数字滤波器,加深对数字滤波器的常用指标和设计过程的理解。