基于Kaiser的FIR数字滤波器设计报告书(共10页).doc
精选优质文档-倾情为你奉上课 程 设 计 课程设计名称:基于Kaiser窗的FIR数字低通滤波器设计 专 业 班 级 : 电信1003班 学 生 姓 名 : 董成成 学 号 : 9 指 导 教 师 : 李相国 课程设计时间: 2013年6月 电子信息工程 专业课程设计任务书学生姓名董成成专业班级电信1003班学号9题 目基于Kaiser窗的FIR数字低通滤波器设计课题性质工程技术研究课题来源自拟课题指导教师李相国同组姓名主要内容 设计一个具有如下性能指标的FIR数字低通滤波器:=0.25,=0.4,=0.01,=0.001;窗函数为Kaiser窗;分析最后设计结果性能。任务要求1. 温习窗函数法设计数字FIR滤波器的原理和设计方法;2. 求出最后所设计出的滤波器冲激响应系数;3. 绘制所设计滤波器的增益响应曲线。参考文献1 胡广书. 数字信号处理理论、算法与实现M. 北京: 清华大学出版社, 1997.2 R. Lyons. Understanding Digital Signal Processing M. 2nd ed. Prentice Hall PTR., 2004.3 A.V.奥本海姆, R.W.谢弗 and J.R.巴克. 离散时间信号处理M. 第二版. 西安交通大学出版社, 2001.4 S. K. Mitra. Digital Signal Processing: A Computer-Based ApproachM. 3rd ed. McGraw-Hill, 2005.审查意见指导教师签字:教研室主任签字: 年 月 日 说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页1 需求分析 基于Kaiser窗的FIR低通滤波器是利用Kaiser函数截取无限冲击响应h(n),最后利用函数freqz得到加窗后的滤波器的幅频响应和相频响应。2 概要设计开始读入窗口长度M计算hd(n)用Kaiser窗函数求w(n)计算H(k)=frezh(n)绘图子(函数)绘制H(k)幅度相位曲线结束图6-1 主程序框图计算h(n)= hd(n) w(n)(1)代入参数值,计算、M的值:omegap=0.25*pi;omegas=0.4*pi;deltap=0.01;deltas=0.001;omegac=(omegap+omegas)/2;deltaomega=omegas-omegap;As=-20*log10(deltas);beta=0.1102*(As-8.7);M=ceil(As-8)/(2.285*deltaomega);(2)定义定义域,Kaiser函数求得,截取冲击响应h(n)得出滤波器时域值h,并求其频域特性:n=0:M;p=M/2;wk=kaiser(M+1,beta);h=(sin(omegac*(n-p)./(pi*(n-p+eps).*wk'H,w=freqz(h,1);(3)定义定义域,画滤波特性Nc=fix(omegac/(pi/length(w);>> Hd=ones(1,Nc),zeros(1,length(w)-Nc);>> N=length(h);L=N/2;>> b=2*(h(L:-1:1);k=1:1:L;k=k-0.5;w1=0:1:511'*pi/512;>> A2=cos(w1*k)*b'>> E=Hd-A2'>> subplot(3,1,1)>> stem(n,h,'fill','MarkerSize',2)>> axis(0,N,-0.1,0.5)>> subplot(3,1,2)>> plot(w,20*log10(abs(H)>> axis(0 pi -100 10)>> subplot(3,1,3)>> plot(w,E)>> axis(0 pi -0.001 0.001)3 运行环境 Window2003系统和Win7系统 4 开发工具和编程语言 Matlab软件、Matlab语言5 详细设计>> clear; -【清除变量】- omegap=0.25*pi;omegas=0.4*pi;deltap=0.01;deltas=0.001;omegac=(omegap+omegas)/2;deltaomega=omegas-omegap;-【利用 计算得出和】-As=-20*log10(deltas);beta=0.1102*(As-8.7);M=ceil(As-8)/(2.285*deltaomega);-【利用 算得、和阶数M 】-n=0:M;p=M/2;wk=kaiser(M+1,beta);h=(sin(omegac*(n-p)./(pi*(n-p+eps).*wk'-【根据Kaiser函数求得,截取冲击响应得到滤波器时域表达式】-H,w=freqz(h,1);-【利用frez函数求出滤波器频域的表达式】-Nc=fix(omegac/(pi/length(w);>> Hd=ones(1,Nc),zeros(1,length(w)-Nc);>> N=length(h);L=N/2;>> b=2*(h(L:-1:1);k=1:1:L;k=k-0.5;w1=0:1:511'*pi/512;>> A2=cos(w1*k)*b'>> E=Hd-A2'>> subplot(3,1,1)>> stem(n,h,'fill','MarkerSize',2)>> axis(0,N,-0.1,0.5)>> subplot(3,1,2)>> plot(w,20*log10(abs(H)>> axis(0 pi -100 10)>> subplot(3,1,3)>> plot(w,E)>> axis(0 pi -0.001 0.001)-【定义定义域,画滤波特性,所利用的函数有:fix取整函数,ones生成全1矩阵,zeros生成全零矩阵,subplot画子图,plot画图函数,axis函数规定横纵坐标范围】-6 调试分析此次课程设计没有调用子函数,整个程序实现得出基于Kaiser窗函数的滤波特性,在编写的过程中,通过查阅Matlab书籍和数字信号处理教科书,不断完善,不断修改,得到理想的实验结果。7 测试结果参考文献1 胡广书. 数字信号处理理论、算法与实现M. 北京: 清华大学出版社, 1997.2 R. Lyons. Understanding Digital Signal Processing M. 2nd ed. Prentice Hall PTR., 2004.3 A.V.奥本海姆, R.W.谢弗 and J.R.巴克. 离散时间信号处理M. 第二版. 西安交通大学出版社, 2001.4 S. K. Mitra. Digital Signal Processing: A Computer-Based ApproachM. 3rd ed. McGraw-Hill, 2005.心得体会 通过本次课程设计,又加深了对软件Matlab的使用以及其中函数的熟悉,最重要的是学习了如何利用窗函数法设计FIR滤波器,从自己的基于Kaiser窗函数的FIR低通滤波器的设计,知道如何实现FIR的滤波器的设计;同样,高通,带通设计思路也会很清晰,以及牵涉到利用其它窗函数,和IIR滤波器设计,相信经过自己的慢慢学习,也会设计出来。因此,自己通过这次课程设计,收获颇为丰富。 信息科学与工程 学院课程设计成绩评价表课程名称:数字信号处理设计题目:基于Kaiser窗的FIR数字低通滤波器设计专业:电子信息工程 班级:1003班 姓名:董成成 学号:9序号评审项目分 数满分标准说明1内 容思路清晰,语言表达准确,概念清楚,论点正确;设计方法科学,分析归纳合理;结论严谨,设计有应用价值。任务饱满,工作量适中2创 新内容新颖,设计能反映新技术,对前人工作有改进或突破,或有独特见解3完整性、实用性整体构思后合理,理论依据充分,设计完整,实用性强4数据准确、可靠数据准确,算法设计合理5规 范 性设计格式、绘图、实验数据、标准的运用等符合有关标准和规定6纪 律 性遵守课程设计纪律,听从指导教师安排,设计过程态度认真7答 辩准备充分,思路清晰、论点正确、对设计方案理解深入,问题回答有理有据,简明正确总 分综合意见该生对设计内容熟悉,实验方法科学,设计完整。课程设计报告内容充实, 完成了课程设计任务。综合评定成绩为: 指导教师 李相国 2013年 6月 28日专心-专注-专业