基于MATLAB的数字带通FIR滤波器设计

基于MATLAB的数字带通FIR滤波器设计
基于MATLAB的数字带通FIR滤波器设计

课程设计

课程设计名称:数字信号处理课程设计

专业班级:电信0604

学生姓名:

学号: 20064300419

指导教师:

课程设计时间: 2009年6月14日

数字信号处理专业课程数字信号处理专业课程设计

任务书

设计内容及技术要求:

根据已学的知识并结合MATLAB 用hamming 窗设计一个数字带通FIR 滤波器,技术指标如下:

上通带截止频率:πω65.0p =,下通带截止频率:πω35.0p =

上阻带截止频率:πω8.0s =,下阻带截止频率:πω2.0s =,

通带最大衰减:dB 1p =R ,阻带最小衰减:dB 50s =R

画出滤波器的幅频特性曲线。

设计原理:

一共有两个过渡带,即111222p s s p w w w w w w ?-?-和。在窗口法设计中这两

个过渡带宽必须是相同的;也就是说,在12w w ??和上不存在独立控制。因此,12w w w ?=?=?。对于这个设计既能用Kaiser 窗,也可以用Hamming 窗,现用Hamming 窗。设计中还是需要理想带通滤波器的脉冲响应()d h n 。

设计思路:

(1)确定理想滤波器()jw d H e 的特性;

(2)由()jw d H e 求出()d h n ;

(3)选择适当的窗函数,并根据线性相位条件确定窗函数的长度N ;在MATLAB 中,可由w=boxcar(N)(矩形窗)、w=hanning(N)(汉宁窗)、w=hamming(N)(汉明窗)、w=Blackman(N)(布莱克曼窗)、w=Kaiser(N,beta)(凯塞窗)等函数来实现窗函数设计法中所需的窗函数。

(4)由h(n)=d h (n).w(n), 0≤n ≤ N-1,得出单位脉冲响应h(n)

然而用Hamming 和Blackman 窗函数都能提供大于50dB 的阻带衰减。现选用Hamming 窗函数,它给出比较小的过渡带,因此有较低的阶。设计中还是需要理想带通滤波器的脉冲响应()d h n 。

程序流程图:

带通滤波器技术指标

从两个理想低通滤波器获得一理想带通滤波器

脉冲响应可以由两个理想低通幅度响应得到,只要它们有相同的相位响应即可;这如图4.3所示。因此,为了确定一个理想带通滤波器的脉冲响应,MA TLAB 子程序(),ideal lp wc M -就足够了。

程序源代码:

ws1 = 0.2*pi; wp1 = 0.35*pi;

wp2 = 0.65*pi; ws2 = 0.8*pi;

As = 60;

tr_width = min((wp1-ws1),(ws2-wp2))

M = ceil(11*pi/tr_width) + 1

n=[0:1:M-1];

wc1 = (ws1+wp1)/2; wc2 = (wp2+ws2)/2;

hd = ideal_lp(wc2,M) - ideal_lp(wc1,M);

w_bla = (blackman(M))';

h = hd .* w_bla;

[db,mag,pha,grd,w] = freqz_m(h,[1]);

delta_w = 2*pi/1000;

Rp = -min(db(wp1/delta_w+1:1:wp2/delta_w)) %通带纹波

As = -round(max(db(ws2/delta_w+1:1:501))) % 最小阻带衰减

subplot(2,2,1); stem(n,hd); title('理想脉冲响应')

axis([0 M-1 -0.4 0.5]); xlabel('n'); ylabel('hd(n)')

subplot(2,2,2); stem(n,w ham);title('Hamming 窗')

axis([0 M-1 0 1.1]); xlabel('n'); ylabel('w(n)')

subplot(2,2,3); stem(n,h);title('实际脉冲响应')

axis([0 M-1 -0.4 0.5]); xlabel('n'); ylabel('h(n)')

subplot(2,2,4);plot(w/pi,db);

title('相对dB 标尺的幅度响应');grid;

xlabel('frequency in pi units'); ylabel('Decibels')

axis([0 1 -150 10]);

set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,1])

set(gca,'YTickMode','manual','YTick',[-60,0])

set(gca,'YTickLabelMode','manual','YTickLabels',['60';' 0'])

仿真结果图:

运行程序,时域和频域图如图所示:

结果分析:

运行程序,Hamming窗的长度是M=75,实际阻带衰减是75dB。通带波纹满足设计要求。

参考资料:

《FIR数字滤波器设计》《基于窗函数法的数字带通FIR滤波器设计》《基于MATLAB的FIR带阻数字滤波器的设计》《MATLAB及其应用》

程佩青著,《数字信号处理教程》,清华大学出版社

2001 Sanjit K. Mitra著,孙洪,余翔宇译,《数字信号处理实验指导书(MATLAB版)》,电子工业出版社,2005年1月

郭仕剑等,《MATLAB 7.x数字信号处理》,人民邮电出版社,2006年

设计心得:

这次课程设计我了窗函数设计滤波器的基本原理,同时也熟悉了MATLAB,这次课程设计让我们学会了理论和实际相结合,再设计中遇到了很多问题,通过问请教查资料把这些东西都解决了,而且还学到了不少的东西。

在设计过程中,要根据对阻带最小衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度N。它的重点在于:选择某种恰当的窗函数和一种合适理想滤波器。这次课程设计不但是我学到了知识更锻炼了自己的心理,对以后的工作学习有不少的帮助

信息科学与工程学院课程设计成绩评价表

课程名称:数字信号处理课程设计

设计题目:结合MATLAB用hamming窗设计一个数字带通FIR滤波器

matlab滤波器设计

长安大学 数字信号处理综合设 计 专业_______电子信息工程_______ 班级__24030602___________ 姓名_______张舒_______ 学号2403060203 指导教师陈玲 日期_______2008-12-27________

一、课程设计目的: 1. 进一步理解数字信号处理的基本概念、基本理论和基本方法; 2.熟悉在Windows环境下语音信号采集的方法; 3.学会用MATLAB软件对信号进行分析和处理; 4.综合运用数字信号处理理论知识,掌握用MATLAB软件设计FIR和IIR数字滤波器的方法; 5. 提高依据所学知识及查阅的课外资料来分析问题解决问题的能力。 二、课程设计内容: 1.语音信号的采集 利用windows下的录音机录制一段自己的话音,时间控制在1秒左右;并对语音信号进行采样,理解采样频率、采样位数等概念。 2.语音信号的频谱分析 利用函数fft对采样后语音信号进行快速傅里叶变换,得到信号的频谱特性。 3.设计数字滤波器 采用窗函数法和双线性变换法设计下列要求的三种滤波器,根据语音信号的特点给出有关滤波器的性能指标: 1)低通滤波器性能指标,fp=1000Hz,fc=1200Hz, As=100dB,Ap=1dB; 2)高通滤波器性能指标,fc=4800Hz,fp=5000Hz ,As=100dB,Ap=1dB; 3)带通滤波器性能指标,fp1=1200Hz,fp2=3000Hz,fc1=1000Hz,fc2=3200Hz,As=100dB,Ap=1dB。 4.对语音信号进行滤波 比较用两种方法设计的各滤波器的性能,然后用性能好的滤波器分别对采集的语音信号进行滤波;并比较滤波前后语音信号的波形及频谱,分析信号的变化。 5.回放语音信号,感觉滤波前后的声音变化。 三、实验原理 (一)基于双线性Z变换法的IIR数字滤波器设计 由于的频率映射关系是根据推导的,所以使jΩ轴每隔2π/Ts便映射到单位圆上一周,利用冲激响应不变法设计数字滤波器时可能会导致上述的频域混叠现象。为了克服这一问题,需要找到由s平面到z平面的另外的映射关系,这种关系应保证: 1) s平面的整个jΩ轴仅映射为z平面单位圆上的一周; 2) 若G(s)是稳定的,由G(s)映射得到的H(z)也应该是稳定的; 3) 这种映射是可逆的,既能由G(s)得到H(z),也能由H(z)得到G(s); 4) 如果G(j0)=1,那么。 双线性Z变换满足以上4个条件的映射关系,其变换公式为

matlab中关于数字滤波器的函数介绍

MATLAB下的数字信号处理实现示例 一信号、系统和系统响应 1、理想采样信号序列 (1)首先产生信号x(n),0<=n<=50 n=0:50; %定义序列的长度是50 A=444.128; %设置信号有关的参数 a=50*sqrt(2.0)*pi; T=0.001; %采样率 w0=50*sqrt(2.0)*pi; x=A*exp(-a*n*T).*sin(w0*n*T); %pi是MATLAB定义的π,信号乘可采用“.*”close all %清除已经绘制的x(n)图形 subplot(3,1,1);stem(x); %绘制x(n)的图形 title(‘理想采样信号序列’); (2)绘制信号x(n)的幅度谱和相位谱 k=-25:25; W=(pi/12.5)*k; X=x*(exp(-j*pi/12.5)).^(n’*k); magX=abs(X); %绘制x(n)的幅度谱 subplot(3,1,2);stem(magX);title(‘理想采样信号序列的幅度谱’); angX=angle(X); %绘制x(n)的相位谱 subplot(3,1,3);stem(angX) ; title (‘理想采样信号序列的相位谱’)(3)改变参数为:1,0734.2,4.0,10==Ω==TAα n=0:50; %定义序列的长度是50 A=1; %设置信号有关的参数 a=0.4; T=1; %采样率 w0=2.0734; x=A*exp(-a*n*T).*sin(w0*n*T); %pi是MATLAB定义的π,信号乘可采用“.*”close all %清除已经绘制的x(n)图形 subplot(3,1,1);stem(x); %绘制x(n)的图形 title(‘理想采样信号序列’); k=-25:25; W=(pi/12.5)*k; X=x*(exp(-j*pi/12.5)).^(n’*k); magX=abs(X); %绘制x(n)的幅度谱 subplot(3,1,2);stem(magX);title(‘理想采样信号序列的幅度谱’); angX=angle(X); %绘制x(n)的相位谱 subplot(3,1,3);stem(angX) ; title (‘理想采样信号序列的相位谱’) 2、单位脉冲序列 在MatLab中,这一函数可以用zeros函数实现: n=1:50; %定义序列的长度是50 x=zeros(1,50); %注意:MATLAB中数组下标从1开始

基于MATLAB的IIR数字带通滤波器设计

1 绪论 (1) 1.1 数字滤波器的优点 (2) 1.2 数字滤波器的发展概况 (3) 1.3 开发工具 (4) 1.3.1 MATLAB软件简介 (4) 1.3.2 MATLAB特点 (5) 2 数字滤波器理论研究 (6) 2.1 滤波器的设计 (6) 2.2 数字滤波器的定义 (7) 2.3 滤波器的设计步骤 (8) 2.4 数字滤波器的类型 (8) 2.5 滤波器的选择 (9) 2.5.1 FIR和IIR数字滤波器的比较 (9) 2.5.2 FIR或IIR滤波器的选取原则 (10) 2.6 数字滤波器的实现方法 (10) 3 IIR滤波器的设计 (11) 3.1 数字滤波器 (11) 3.2 IIR数字滤波器设计方法 (12) 3.2.1用脉冲相应不变法设计IIR数字滤波器 (13) 3.2.2 用双线性变换法设计IIR数字滤波器 (15) 4 IIR数字带通滤波器设计过程 (18) 4.1 设计步骤: (18) 4.2 程序流程框图: (19) 4.3 MATLAB程序: (19) 结论 (21) 参考文献 (22) 致谢 (23)

基于MATLAB的IIR数字带通滤波器设计 1 绪论 凡是有能力进行信号处理的装置都可以称为滤波器。在近代电信设备和各类控制系统中,滤波器应用极为广泛;在所有的电子部件中,使用最多,技术最为复杂的要算滤波器了。滤波器的优劣直接决定产品的优劣,所以,对滤波器的研究和生产历来为各国所重视。 1917年美国和德国科学家分别发明了LC滤波器,次年导致了美国第一个多路复用系统的出现。20世纪50年代无源滤波器日趋成熟。自60年代起由于计算机技术、集成工艺和材料工业的发展,滤波器发展上了一个新台阶,并且朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉方向努力,其中小体积、多功能、高精度、稳定可靠成为70年代以后的主攻方向。导致RC有源滤波器、数字滤波器、开关电容滤波器和电荷转移器等各种滤波器的飞速发展,到70年代后期,上述几种滤波器的单片集成已被研制出来并得到应用。80年代,致力于各类新型滤波器的研究,努力提高性能并逐渐扩大应用范围。90年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。当然,对滤波器本身的研究仍在不断进行。 我国广泛使用滤波器是50年代后期的事,当时主要用于话路滤波和报路滤波。经过半个世纪的发展,我国滤波器在研制、生产和应用等方面已纳入国际发展步伐,但由于缺少专门研制机构,集成工艺和材料工业跟不上来,使得我国许多新型滤波器的研制应用与国际发展有一段距离。 目前数字滤波器的设计有许多现成的高级语言设计程序,但他们都存在设计效率较低,不具有可视图形,不便于修改参数等缺点,而Matlab为数字滤波的研究和应用提供了一个直观、高效、便捷的利器。他以矩阵运算为基础,把计算、可视化、程序设计融合到了一个交互式的工作环境中。尤其是Matlab工具箱使各个领域的研究人员可以直观方便地进行科学研究与工程应用。其中的信号处理工具箱、图像处理工具箱、小波工具箱等更是为数字滤波研究的蓬勃发展提供了可能。 1

基于matlab的数字滤波器设计

淮北煤炭师范学院 2009届学士学位论文 基于MA TLAB的数字滤波器设计 学院、专业物理与电子信息学院 电子信息科学与技术 研究方向基于MATLAB的数字滤波器设计 学生姓名耿博 学号200513432024 指导教师姓名邹锋 指导教师职称讲师 2009 年4 月18

基于MATLAB的数字滤波器设计 耿博 (淮北煤炭师范学院物理与电子信息学院235000) 摘要随着信息时代和数字世界的到来,数字信号处理已成为今一门极其重要的学科和技术领域。数字信号处理在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理应用中,数字滤波器十分重要并已获得广泛应用。 数字滤波是数字信号处理的重要内容,数字滤波器可分为IIR和FIR两大类。对于IIR数字滤波器的设计,需要借助模拟原型滤波器,再将模拟滤波器转化为数字滤波器,文中采用的设计方法是脉冲响应不变法、双向性变换法和完全函数设计法;对于FIR数字滤波器的设计,可以根据所给定的频率特性直接设计,文中采用的设计方法是窗函数法。本文根据IIR滤波器和FIR滤波器的特点,在MATLAB坏境下分别用双线性变换法设计IIR和用窗函数设计FIR数字滤波器,并对采集的语音信号进行分析,最后给出了IIR和FIR对语音滤波的效果。 关键词数字滤波器;IIR ;FIR ;MATLAB

The Design of Digital Filter based on MATLAB Geng Bo School of Physics and Electronics Information, Huaibei Coal Industry Teachers? College, 235000 ABSTRACT Along with the information age and the digital world arrival, the digital signal processing has become a now extremely important discipline and the area of technology.The digital signal processing in the correspondence, the multitudinous domains the pronunciation such as the image, the automatic control, the radar, the military, the aerospace, the medical service and the domestic electric appliances and so on have obtained the widespread application.In the digital signal processing application, the digital filter are extremely important and have obtained the widespread application. The digital filter are the digital signal processing important content, the digital filter may divide into IIR and the FIR two main kinds. As for the IIR digital filter design, we need the help of analog prototype filter, and then transform analog filter into digital filter. In the paper we use the design of the pulse response invariable method, the bilinear method and full function design; as for the FIR filter, we can design it directly based on the giving frequency, in the paper it uses the design of the window function.This article according to the IIR filter and the FIR filter characteristic, uses the bilinearity method of transformation under the MATLAB bad boundary to design IIR and to design the FIR numeral filter separately with the window box number, and carries on the analysis to the gathering pronunciation signal, and finally gives IIR and FIR to the pronunciation filter effect. Keywords Digtial Filter;IIR;FIR;MATLAB

数字信号综合设计matlab数字带通滤波器

数字信号处理综合设计 实验报告 一、实验目的: (1) 深刻理解滤波器的设计指标及根据指标进行数字滤波器设计的过程 (2) 了解滤波器在通信系统中的使用 二、实验步骤: 1.通过SYSTEMVIEW 规划整个系统,确定系统的采样频率、观测时间、细化并设计整个系统,仿真调整并不断改进达到正确调制、正确滤波、正确解调的目的。(参考文件zhan3.svu ) (1) 检查滤波器的波特图,看是否达到预定要求; (2) 检查幅度调制的波形以及相加后的信号的波形和频谱是否正常; (3) 检查解调后的的基带信号是否正常,分析波形变形的原因和解决措施; (4) 实验中必须体现带通滤波器的物理意义和在实际中的使用价值。 2.熟悉matlab 中的仿真系统; 3.将1.中设计的SYSTEMVIEW (如zhan3.svu )系统移植到matlab 中的仿真环境中,使其达到相同的效果; 4.或者不用仿真环境,编写程序实现该系统,并验证调制解调前后的信号是否一致。 实验总共提供三个单元的时间(6节课)给学生,由学生自行学习和自行设 sin ω2 基带信号2

计和移植 三、实验内容: 1.使用MATLAB软件中的图形化工具按照zhan3连接带通滤波器、低通滤波器等如下图: 2.其中各参数如下: (1)Plus Generator设置如下: 脉冲类型为Sample based,幅值1,周期100,脉冲宽度50,采样时间0.001s

(2)载波设置如下: 100HZ的载波:幅度为5,采样时间为0.001s 300HZ的载波:幅度为5,采样时间为0.001s

带通滤波器1:

数字滤波器的MATLAB设计与DSP上的实现

数字滤波器的MAT LAB设计与 DSP上的实现 数字滤波器的MATLAB 设计与DSP上的实现 公文易文秘资源网佚名2007-11-15 11:56:42我要投稿添加到百度搜藏 摘要:以窗函数法设计线性相位FIR数字滤波器为例,介绍用MATLAB工具软件设计数字滤波器的方法和在定点DSP上的实现。实现时,先在CCS5000仿真开发,然后将程序加载到TMS320VC5409评估板上实时运行,结果实现了目标要求。文中还讨论了定标、误差、循环寻址等在DSP上实现的关键问题。关键词 摘要:以窗函数法设计线性相位 FIR数字滤波器为例,介绍用 MATLAB工具软件设计数字滤波器的方法和在定点DSP上的实现。实现时,先在 CCS5000仿真开发,然后将程序加载到 TMS320VC5 409评估板上实时运行,结果实现了目标要求。文中还讨论了定标、误差、循环寻址等在DSP上实 现的关键问题。 关键词:数字滤波器MATLAB DSP 引言 随着信息时代和数字世界的到来,数字信号处理已成为今一门极其重要的学科和技术领域。数字信号处理在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应

用。在数字信号处理应用中,数字滤波器十分重要并已获得广泛应用。 1数字滤波器的设计 1.1数字滤波器设计的基本步骤 数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR )滤波器和有限长冲激响应(FIR )滤波器。IIR滤波器的特征是,具有无限持续时间冲激响应。种滤波器一般需要用递归模型来实现,因而有时也称之为递归滤波器。FIR滤波器的冲激响应只能延续一定时间, 在工程实际中可以采用递归的方式实现,也可以采用非递归的方式实现。数字滤波器的设计方法有多种,如双线性变换法、窗函数设计法、插值逼近法和Chebyshev逼近法等等。随着 MATLAB软件尤 其是MATLAB的信号处理工作箱的不断完善,不仅数字滤波器的计算机辅助设计有了可能,而且还可以使设计达到最优化。 数字滤波器设计的基本步骤如下: (1确定指标 在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常常被用来实现选频操作。因此,指标的形式一般在频域中给岀幅度和相位响应。幅度指标主要以两种方式给岀。第一种是绝对指标。它提供对幅度响应函数的要求,一般应用于FI R滤波器的设计。第二种指标是相对指标。它以分贝值的形式给岀要求。在工程实际中,这种指标最受欢迎。对于相位响应指标形式,通常希望系统在通频带中人有线性相位。运用线性相位响应指标进行滤波器设计具有如下优点:①只包含实数算法,不涉及复数运算;②不存在延迟失真,只有固定数量的延迟;③长度为N的滤波器(阶数为N-1),计算量为N/2数量级。因此,本文中滤波器的设计就以线性相位FIR滤波器的设计为例。 (2)逼近

数字滤波器matlab的程序

数字滤波器matlab的源代码 function lvbo(Ua,Ub,choise) %参考指令:lvbo(2*pi,10*pi,1/0/-1) U1=min(Ua,Ub); U2=max(Ua,Ub); Us=16*U2; T=2*pi/Us; T_sum=4*max(2*pi/Ua,2*pi/Ub); sum=T_sum/T; t=T:T:T_sum; x=sin(U1*t)+0.8*sin(U2*t); X=DFT(x); figure(1); subplot(221) U=Us/sum:Us/sum:Us; stem(U,abs(X));grid on axis([Us/sum,Us/2,0,1.2*max(abs(X))]) title('原模拟信号采样频谱图') Ucd=U1+(U2-U1)*1/5;Usd=U2-(U2-U1)*1/5; switch choise case 1 Hz_ejw=IIR_DF_BW(Ucd,1,Usd,30,T,sum); case -1 Hz_ejw=IIR_DF_CF(Ucd,1,Usd,30,T,sum); case 0 Hz_ejw=FIR_DF_HM(U1,U2,T,sum); otherwise Hz_ejw=IIR_DF_BW(Ucd,1,Usd,30,T,sum); end Y=X.*Hz_ejw; y=1/sum*conj(DFT(conj(Y))); figure(1); subplot(224) plot(t,real(y)); title('模拟信号滤波后');grid on axis([0,T_sum,-max(real(y))*1.5,max(real(y))*1.5]) subplot(222); plot(t,x); hold on

数字带通滤波器

课程设计报告 专业班级 课程 题目 学号 学生姓名 指导教师 年月

一、设计题目:IIR 数字带通滤波器设计 二、设计目的 1、巩固所学理论知识。 2、提高综合运用所学理论知识独立分析和解决问题的能力。 3、更好地将理论与实践相结合。 4、掌握信号分析与处理的基本方法与实现。 5、熟练使用MATLAB 语言进行编程实现。 三、设计要求 采用适当方法基于MATLAB 设计一个IIR 带通滤波器,其中带通的中心频率为ωp0=0.5π,;通带截止频率ωp1=0.4π,ωp2=0.6π;通带最大衰减αp =3dB;阻带最小衰减αs =15dB;阻带截止频率ωs2=0.7π. 四、设计原理 1.用脉冲相应不变法设计IIR 数字滤波器 利用模拟滤波器来设计数字滤波器,也就是使数字滤波器能模仿模拟滤波器的特性,这种模仿可以从不同的角度出发。脉冲响应不变法是从滤波器的脉冲响应出发,使数字滤波器的单位脉冲响应序列h (n )模仿模拟滤波器的冲激响应 h a (t ),即将h a (t )进行等间隔采样,使h (n )正好等于h a (t )的采样值,满足 h (n )=h a (nT ) 式中,T 是采样周期。 如果令H a (s )是h a(t )的拉普拉斯变换,H (z )为h (n )的Z 变换,利用采样序列的 Z 变换与模拟信号的拉普拉斯变换的关系得 (1-1) 则可看出,脉冲响应不变法将模拟滤波器的S 平面变换成数字滤波器的Z 平面,这个从s 到z 的变换z =e sT 是从S 平面变换到Z 平面的标准变换关系式。 ??? ?? -= Ω-= ∑∑ ∞ -∞=∞ -∞ ==k T j s X T jk s X T z X k a s k a e z sT π21 )(1) (

实验11 用MATLAB设计FIR数字滤波器

实验11 用MATLAB 设计FIR 数字滤波器 一、实验目的: 1、加深对窗函数法设计FIR 数字滤波器的基本原理的理解。 2、学习用MA TLAB 语言的窗函数法编写设计FIR 数字滤波器的程序。 3、了解MATLAB 语言有关窗函数法设计FIR 数字滤波器的常用函数用法。 二、实验内容及步骤 2、选择合适的窗函数设计FIR 数字低通滤波器,要求: w p =0.2π,R p =0.05dB ; w s =0.3π,A s =40dB 。描绘该滤波器的脉冲响应、窗函数及滤波器的幅频响应曲线和相频响应曲线。 分析:根据设计指标要求,并查表11-1,选择汉宁窗。程序清单如下: function hd=ideal_lp(wc,N) wp=0.2*pi;ws=0.3*pi;deltaw=ws-wp; tao=(N-1)/2; n=[0:(N-1)]; m=n-tao+eps; hd=sin(wc*m)./(pi*m); function[db,mag,pha,grd,w]=freqz_m(b,a); [H,w]=freqz(b,a,1000,'whole'); H=(H(1:501))';w=(w(1:501))'; mag=abs(H); db=20*log10((mag+eps)/max(mag)); pha=angle(H); grd=grpdelay(b,a,w); wp=0.2*pi;ws=0.3*pi;deltaw=ws-wp; wc=(ws+wp)/2; 课程名称:数字信号处理 实验成绩: 指导教师: 实 验 报 告 院系: 信息工程学院 班级: 电信二班 学号: 姓名: 日期:

matlab数字滤波器设计程序

%要求设计一butterworth低通数字滤波器,wp=30hz,ws=40hz,rp=0.5,rs=40,fs=100hz。>>wp=30;ws=40;rp=0.5;rs=40;fs=100; >>wp=30*2*pi;ws=40*2*pi; >> [n,wn]=buttord(wp,ws,rp,rs,'s'); >> [z,p,k]=buttap(n); >> [num,den]=zp2tf(z,p,k); >> [num1,den1]=impinvar(num,den); Warning: The output is not correct/robust. Coeffs of B(s)/A(s) are real, but B(z)/A(z) has complex coeffs. Probable cause is rooting of high-order repeated poles in A(s). > In impinvar at 124 >> [num2,den2]=bilinear(num,den,100); >> [h,w]=freqz(num1,den1); >> [h1,w1]=freqz(num2,den2); >>subplot(1,2,1); >>plot(w*fs/(2*pi),abs(h)); >>subplot(1,2,2); >>plot(w1*fs/(2*pi),abs(h1)); >>figure(1); >>subplot(1,2,1); >>zplane(num1,den1); >>subplot(1,2,2); >>zplane(num2,den2);

高级数字滤波器设计及Matlab实现

高级数字滤波器设计及Matlab 实现 利用Parks-McClellan 算法设计线性相位FIR 滤波器 一、 算法原理 长度为2n+1的线性相位数字滤波器的传输函数为:20 ()n k k k G z h Z -== ∑。当 Z=exp(j T ω)=exp(2j F π)时,可得到频率响应: ()exp(2)cos 2n k k G F j nF d k F ππ==-∑ exp(2)()j F H F π=- 其中2n k k d h -=,k=0,……,n-1,0n d h = max ()()()W F D F H F - 对于一个理想的低通滤波器上式中的H(F)可以表示为: 误差加权函数: 允许设计者自己给定通带和阻带内的误差范围。令p s B B A = ,设计长度为2n+1的线性相位低通滤波器只要找到k d 并使得m a x ()()()W F D F H F -最小。 设空间A 是[0,1/2]的封闭子空间,为了使0 ()cos 2n k k H F d kF π== ∑是D(F) 在A 上唯一的最佳逼近,加权误差方程()()[()()]E F W F D F H F =-在A 上至少要有n+2个交错点。因此1()()i i E F E F E -=-=±,011,n i F F F F A +<∈ ,

max ()E E F =。算法的流程如图1所示。 对于给定的n+2个频率点,需要计算n+2个方程: ()(()())(1)k k k k W F H F D F ρ-=-- 写成矩阵的形式就是: 图 1.

0000001 1 1 1 1011 1 1 1 11 1cos 2cos 4cos 2()()11cos 2cos 4cos 2()()()(1)1cos 2cos 4cos 2()n n n n n n n F F nF W F d D F d F F nF D F W F d D F F F nF W F ππππππρπππ++++++?? ???? ?? ?? ??-????????????=??????????????????-?? ????? ? 通过该方程组可得: 其中: 利用拉格朗日插值公式可得: 这里 利用求得的H(F)求出误差函数E(F)。如果对所有的频率都有()E F ρ≤,说明ρ是纹波极值,交错频率点121,n F F F + 是交错频率点。若存在某些频率使得()E F ρ>,说明初始交错点组中的某些点需要交换。 对于上次确定的121,n F F F + 中每一点,都检查其附近是否存在某一频率 ()E F ρ>,如果有再在该点附近找出局部极值点,并用该,点代替原来的

基于MATLAB的IIR数字带通滤波器设计

基于MA TLAB的IIR数字带通滤波器设计 摘要 窗函数法在IIR 数字滤波器的设计中有着广泛的应用, 但这不是最优化的设计。介绍了一种基于等波纹切比雪夫逼近准则的IIR 数字滤波器的最优化设计方法,通过MA TLAB 的仿真实现, 证明了该方法是一种最优化的设计。传统的数字滤波器设计方法繁琐且结果不直观,本文利用MA TLAB具有强大的科学计算和图形显示这一优点,与窗函数法设计理论相结合共同设计IIR数字滤波器,不但使设计结果更加直观,而且提高了滤波器的设计精度,从而更好地达到预期效果。 关键词:IIR数字滤波器;窗函数,等波纹切比雪夫逼近,MA TLAB 仿真 ABSTRACT Window function method in the design of IIR digital filter has a wide range of applications, but this is not the most optimal design. Such as corrugated paper, a Chebyshev approximation for IIR digital filter criteria for the optimization design method to achieve through the MA TLAB simulation proved that the method is one of the most optimized design. Conventional digital filter design method is cumbersome and results are not intuitive, this paper, MA TLAB has a powerful scientific computing and graphics display the advantages, with the window function method combines design theory to design IIR digital filter design results not only more intuitive, but also improve the accuracy of the filter design to better achieve the desired results. KEY WORDS: IIR digital filters,window function,such as ripple Chebyshev approximation,MA TLAB simulation 目录 引言.............................................第页 第1 章数字滤波器................................第页 第2 章IIR数字滤波器设计方法......................第页 2.1用脉冲相应不变法设计IIR数字滤波器..........第页 2.2 脉冲响应不变法优缺点........................第页 2.3用双线性变换法设计IIR数字滤波器............第页 2.4双线性变换法优缺点..........................第页 第3章IIR数字带通滤波器设计过程...................第页 3.1设计步骤.....................................第页 3.2程序流程框图.................................第页 3.3 MA TLAB程序..................................第页 第四章结果及分析.................................第页 第五章总结.......................................第页 参考文献..........................................第页 致谢..............................................第页 附录..............................................第页

基于matlab的FIR数字滤波器设计(多通带,窗函数法)

数字信号处理 课程设计报告 设计名称:基于matlab的FIR数字滤波器设计 彪

一、课程设计的目的 1、通过课程设计把自己在大学中所学的知识应用到实践当中。 2、深入了解利用Matlab设计FIR数字滤波器的基本方法。 3、在课程设计的过程中掌握程序编译及软件设计的基本方法。 4、提高自己对于新知识的学习能力及进行实际操作的能力。 5、锻炼自己通过网络及各种资料解决实际问题的能力。 二、主要设计内容 利用窗函数法设计FIR滤波器,绘制出滤波器的特性图。利用所设计的滤波器对多个频带叠加的正弦信号进行处理,对比滤波前后的信号时域和频域图,验证滤波器的效果。 三、设计原理 FIR 滤波器具有严格的相位特性,对于信号处理和数据传输是很重要的。 目前 FIR滤波器的设计方法主要有三种:窗函数法、频率取样法和切比雪夫等波纹逼近的最优化设计方法。常用的是窗函数法和切比雪夫等波纹逼近的最优化设计方法。本实验中的窗函数法比较简单,可应用现成的窗函数公式,在技术指标要求高的时候是比较灵活方便的。 如果 FIR 滤波器的 h(n)为实数, 而且满足以下任意条件,滤波器就具有准确的线性相位: 第一种:偶对称,h(n)=h(N-1-n),φ (ω)=-(N-1)ω/2 第二种:奇对称,h(n)=-h(N-1-n), φ(ω)=-(N-1)ω/2+pi/2 对称中心在n=(N-1)/2处 四、设计步骤 1.设计滤波器 2.所设计的滤波器对多个频带叠加的正弦信号进行处理 3.比较滤波前后信号的波形及频谱 五、用窗函数设FIR 滤波器的基本方法 基本思路:从时域出发设计 h(n)逼近理想 hd(n)。设理想滤波器的单位响应在时域表达为hd(n),则Hd(n) 一般是无限长的,且是非因果的,不能

切比雪夫I型数字带通滤波器要点

课程设计 课程名称:数字信号处理 题目编号: 0801 题目名称:切比雪夫I型带通IIR数字滤波器 专业名称:电子信息工程 班级: 1203班 学号: 学生姓名:段超 任课教师:陈忠泽 2015年08月30日

目 录 1. 数字滤波器的设计任务及要求(编号0801) ................... 2 2. 数字滤波器的设计及仿真 .. (2) 2.1数字滤波器(编号0801)的设计 ................................... 2 2.2数字滤波器(编号0801)的性能分析 . (4) 3. 数字滤波器的实现结构对其性能影响的分析 (6) 3.1数字滤波器的实现结构一(0801)及其幅频响应 ...................... 7 3.2数字滤波器的实现结构二(0801)及其幅频响应 ...................... 9 3.3 数字滤波器的实现结构对其性能影响的小结 (12) 4. 数字滤波器的参数字长对其性能影响的分析 (12) 4.1数字滤波器的实现结构一(0801)参数字长及幅频响应特性变化 ...... 14 4.2数字滤波器的实现结构二(0801)参数字长及幅频响应特性变化 ....... 17 4.3 数字滤波器的参数字长对其性能影响的小结 (20) 5. 结论及体会 (20) 5.1 滤波器设计、分析结论 .......................................... 21 5.2 我的体会 ...................................................... 21 5.3 展望 . (21) 1. 数字滤波器的设计任务及要求 (1)切比雪夫I 型带通IIR 数字滤波器各项指标如下: 阻带下截止频率1s ω=rad i d π32 ) ln(; 通带下截止频率1p ω=rad i i d d π???? ?? +20 )(32)ln(log 10 ; 通带上截止频率2p ω=rad i i d d π??? ? ? ?-20 )(32 )ln(-1log 10 ;

FIR数字滤波器设计及MATLAB使用要点

数字信号处理课程设计 《数字信号处理》 课程设计报告 FIR数字滤波器设计及MATLAB实现 专业:通信工程 班级:通信1101班 组次:第9组 姓名及学号: 姓名及学号:

目录 一、设计目的 (3) 二、设计任务 (3) 三、设计原理 (3) 3.1窗函数法 (3) 3.2频率采样法 (4) 3.3最优化设计 (5) 3.3.1等波纹切比雪夫逼近准则 (5) 3.3.2仿真函数 (6) 四、设计过程 (7) 五、收获与体会 (13) 参考文献 (13)

FIR数字滤波器设计及MATLAB实现 一、设计目的 FIR滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基 本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性, 同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR 滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。滤波器设 计是根据给定滤波器的频率特性,求得满足该特性的传输函数。 二、设计任务 FIR滤波器设计的任务是选择有限长度的() H e满足一定 h n,使传输函数()jw 的幅度特性和线性相位要求。由于FIR滤波器很容易实现严格的线性相位,所以FIR 数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。 设计过程一般包括以下三个基本问题: (1)根据实际要求确定数字滤波器性能指标; (2)用一个因果稳定的系统函数去逼近这个理想性能指标; (3)用一个有限精度的运算去实现这个传输函数。 三、设计原理 FIR滤波器设计的任务是选择有限长度的() H e满足一定 h n,使传输函数()jw 的幅度特性和线性相位要求。由于FIR滤波器很容易实现严格的线性相位,所以FIR数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。 设计过程一般包括以下三个基本问题: (1)根据实际要求确定数字滤波器性能指标; (2)用一个因果稳定的系统函数去逼近这个理想性能指标; (3)用一个有限精度的运算去实现这个传输函数。 3.1窗函数法 设计FIR数字滤波器的最简单的方法是窗函数法,通常也称之为傅立叶级数法。FIR数字滤波器的设计首先给出要求的理想滤波器的频率响应()jw H e,设计 d

基于MATLAB的数字滤波器设计

基于matlab的数字滤波器设计 摘要:本文介绍的是数字滤波器在MATLAB环境下的设计方法。数字滤波是数字信号处理的重要内容,在实际应用中有非常大的作用。我们研究的数字滤波器可分为IIR和FIR两大类。对于IIR数字滤波器的设计,我们需要借助模拟原型滤波器,然后再将模拟滤波器转化为数字滤波器,文中采用的设计方法是脉冲响应不变法、双向性变换法和完全函数设计法;对于FIR数字滤波器的设计,可以根据所给定的频率特性直接设计,文中采用的设计方法是窗函数法。根据IIR 滤波器和FIR滤波器的特点,本文在MATLAB坏境下分别用双线性变换法设计IIR和用窗函数设计FIR数字滤波器,并让这两种滤波器对采集的语音信号进行分析和比较,经过分析,最后给出了IIR和FIR对语音滤波的效果,并总结这两种滤波器在MATLAB环境下设计方法的优缺点。 关键词:数字滤波器;IIR ;FIR ;MATLAB

The Design of Digital Filter based on MATLAB Abstract:This article describes a digital filter in the MATLAB environment design. Digital filtering is an important part of digital signal processing which is playing a very big role in practice .The digital filter we studied can be divided into two categories——IIR and FIR. For the IIR digital filter design, we will need the help of simulation prototype filter, analog filters and then converted it into digital filter For the IIR digital filter design .The design methods used in the text is the same impulse response method, bi-sexual transformation and full function design ;We can based on the frequency characteristics of the given direct design, design method used in the text is the window function for FIR digital filter design. Based on the characteristics of IIR filter and FIR filters ,the bad paper in the MATLAB environment under the bilinear transformation method were used to design IIR and FIR with window function digital filter design and filters to capture both the voice signal analysis and compare. Through analysis of IIR and FIR Finally, the effect of filtering on the speech, and concluded the advantages and disadvantages in the two filter design methods in the MATLAB environment. Key words: Digital Filter ;IIR;FIR;MATLAB

相关文档
最新文档