文档库 最新最全的文档下载
当前位置:文档库 › 基于Matlab的IIR数字滤波器设计(论文)

基于Matlab的IIR数字滤波器设计(论文)

基于Matlab的IIR数字滤波器设计(论文)
基于Matlab的IIR数字滤波器设计(论文)

摘要

在现代通信系统中,由于信号中经常混有各种复杂成分,所以很多信号分析都是基于滤波器而进行的,而数字滤波器是通过数值运算实现滤波,具有处理精度高、稳定、灵活、不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊滤波功能。数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。实现IIR滤波器的阶次较低,所用的存储单元较少,效率高,精度高,而且能够保留一些模拟滤波器的优良特性,因此应用很广。Matlab软件以矩阵运算为基础,把计算、可视化及程序设计有机融合到交互式工作环境中,并且为数字滤波的研究和应用提供了一个直观、高效、便捷的利器。尤其是Matlab中的信号处理工具箱使各个领域的研究人员可以直观方便地进行科学研究与工程应用。本文首先介绍了数字滤波器的概念,分类以及设计要求。接着利用MATLAB函数语言编程,用信号处理图形界面FDATool来设计滤波器以及Sptool界面设计的方法,并用FDATool模拟IIR 数字滤波器处理信号。重点设计Chebyshev I型和Chebyshev II型数字低通滤波器,并介绍最优化设计。

【关键字】IIR 滤波器FDATool Sptool Simulink

ABSTRACT

In modern communication systems,Because often mixed with various signal complex components,So many signal analysis is based on filters, and the digital filter is realized through numerical computation, digital filters filter with high precision, stability and flexibility, don't exist, can realize the impedance matching simulating the special filter cannot achieve filter function. Digital filter according to its impulse response function and characteristics of the time can be divided into two kinds, namely the infinite impulse response (IIR) digital filter and finite impulse response (FIR digital filters). The order of realizing IIR filter is used, low and high efficiency less storage unit, high precision, and can keep some simulation characteristics of filter, so it is widely used. Matlab software based on matrix computation, the calculation, visualization and program design of organic integration to interactive environment for digital filter, and the research and application of provides an intuitive, efficient and convenient tool. Especially in the Matlab signal processing to all areas of research toolbox personnel can easily for scientific research and engineering application. This paper introduces the concept of digital filter, classification and design requirements. Then using MATLAB language programming, with functions of signal processing FDATool graphical interface design of interface design and Sptool filter, and FDATool analog signal processing IIR digital filter. Key design Chebyshev type I and II digital Chebyshev lowpass filter, and introduces optimization design.

【Keywords】IIR Filter FDATool Sptool Simulink

目录

前言.............................................................. 1第一章数字滤波器.................................................. 2第一节数字滤波器的概念........................................ 2

第二节数字滤波器的分类........................................ 2

第三节数字滤波器的设计要求.................................... 4

第二章 IIR数字滤波器设计方法...................................... 5第一节 IIR数字滤波器的设计步骤................................. 5

第二节用脉冲相应不变法设计IIR数字滤波器...................... 6

一、设计原理................................................ 6

二、脉冲响应不变法优缺点.................................... 8

第三节双线性变换法设计IIR数字滤波器.......................... 9

一、设计原理................................................ 9

二、双线性变换法优缺点.................................... 11第三章 IIR滤波器的MATLAB设计................................... 13第一节 IIR数字滤波器的典型设计法............................. 14

第二节 IIR数字滤波器的直接设计法............................. 18

第三节 FDATool介绍和界面设计................................. 23

第四节 FDATOOL设计IIR数字滤波器............................. 24

第五节 SIMULINK 仿真IIR滤波器............................... 26

总结............................................................ 29致谢............................................................ 30参考文献......................................................... 31结束语........................................................... 32

前言

随着信息时代和数字世界的到来,数字信号处理已成为当今一门极其重要的学科和技术领域。目前数字信号处理在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理中起着重要的作用并已获得广泛应用的是数字滤波器(DF,Digital Filter),根据其单位冲激响应函数的时域特性可分为两类:无限冲激响应IIR(Infinite Impulse Response)滤波器和有限冲激响应FIR(Finite Impulse Response)滤波器。与FIR 滤波器相比,IIR的实现采用的是递归结构,极点须在单位圆内,在相同设计指标下,实现IIR滤波器的阶次较低,即所用的存储单元少,从而经济效率高。MATLAB是英文MATrix LABoratory(矩阵实验室)的缩写。它是美国的MathWorks公司推出的一套用于科学计算和图形处理可视化、高性能语言与软件环境。MATLAB的信号处理工具箱是专门应用于信号处理领域的专用工具箱,它的两个基本组成就是滤波器的设计与实现部分以及谱分析部分。工具箱提供了丰富而简便的设计,使原来繁琐的程序设计简化成函数的调用。只要以正确的指标参数调用相应的滤波器设计程序或工具箱函数,便可以得到正确的设计结果,使用非常方便。

第一章 数字滤波器

第一节 数字滤波器的概念

滤波器是指用来对输入信号进行滤波的硬件和软件。数字滤波器是对数字信号实现滤波的线性时不变系统。数字滤波器可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化过程中,使信号按预定的形式变化。数字滤波实质上是一种运算过程,实现对信号的运算处理。数字滤波器和模拟滤波器相比,因为信号的形式和实现滤波的方法不同,数字滤波器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配等优点。输入数字信号(数字序列)通过特定的运算转变为输出的数字序列,因此,数字滤波器本质上是一个完成特定运算的数字计算过程,也可以理解为是一台计算机。描述离散系统输出与输入关系的卷积和差分方程只是给数字信号滤波器提供运算规则,使其按照这个规则完成对输入数据的处理。

时域离散系统的频域特性:

)()()(ωωωj j j e H e X e Y = (式1-1)

其中)(ωj e Y 、)(ωj e X 分别是数字滤波器的输出序列和输入序列的频域特性(或称为频谱特性), )(ωj e H 是数字滤波器的单位取样响应的频谱,又称为数字滤波器的频域响应。输入序列的频谱)(ωj e X 经过滤波后)()(ωωj j e H e X ,因此,只要按照输入信号频谱的特点和处理信号的目的, 适当选择)(ωj e H ,使得滤波后的)()(ωωj j e H e X 满足设计的要求,这就是数字滤波器的滤波原理。

第二节 数字滤波器的分类

按照不同的分类方法,数字滤波器有许多种类,但总起来可以分成两大类:经典滤波器和现代滤波器。经典滤波器的特点是其输入信号中有用的频率成分和希望滤除的频率成分占有不同的频带,通过一个合适的选频滤波器滤除干扰,得到纯净信号,达到滤波的目的。但是,如果信号和干扰的频谱相互重叠,则经典滤波器不能有效地滤除干扰,最大限度地恢复信号,这时就需要现代滤波器,例如维纳滤波器、卡尔曼滤波器、自适应滤波器等最佳滤波器。现代滤波器是根据

随机信号的一些统计特性,在某种最佳准则下,最大限度地抑制干扰,同时最大限度地回复信号,从而达到最佳滤波的目的。

经典数字滤波器从滤波特性上分类,可以分为:低通滤波器、高通滤波器、带通滤波器、带阻滤波器。

图1-1 各种理想滤波器的幅频特性

数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。IIR 数字滤波器的特征是,具有无限持续时间冲激响应,需要用递归模型来实现,

其差分方程为:

∑∑==-+-=N i N

i i i i n y b i n x a

n y 01)()()( (式1-2)

系统函数为:

k

N k i M

r r r Z a

Z b

z H -==-∑∑+=10

1)( (式1-3)

设计IIR 滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。

Ω

Ω

第三节 数字滤波器的设计要求

滤波器的指标常常在频域给出。数字滤波器的频响特性函数)(jw e H 一般为复函数,所以通常表示为:

)()(|)()(w j jw e z jw e e H z H e H jw Φ===(式1-4)

其中,|)(jw e H |称为幅频特性函数,Φ(w)称为相频特性函数。幅频特性表示信号通过该滤波器后各频率成分的衰减情况,而相频特性反映各频率通过滤波器后在时间上的延时情况。一般IIR 数字滤波器,通常只用幅频响应函数|)(jw e H |来描述设计指标,相频特性一般不作要求。

IIR 滤波器指标参数如下图所示。图中,ωp 和ωs 分别为通带边界频率和阻带边界频率;δ1和δ2分别为通带波纹和阻带波纹;允许的衰减一般用dB 数表示,通带内所允许的最大衰减(dB )和阻带内允许的最小衰减(dB )分别为αp 和αs 表示:

111111lg 2011lg 20δδδδ-+=+--=p a (式1-5)

2lg 20δ-=s a (式1-6)

一般要求: 当p ωω≤≤0时,p

jw a e H ≤-)(lg 20; 当πωω≤≤时,)(lg 20jw e H a s -≤。

图1-2 低通滤波器的技术要求

第二章 IIR 数字滤波器设计方法

IIR 数字滤波器是一种离散时间系统,其系统函数为

)()(1)(10

z x z r z a

z b

Z H N k k

k M

k k k =

-=∑∑=-=- (式2-1) 假设M ≤N ,当M >N 时,系统函数可以看作一个IIR 的子系统和一个(M-N)的FIR 子系统的级联。IIR 数字滤波器的设计实际上是求解滤波器的系数k a 和k b ,它是数学上的一种逼近问题,即在规定意义上(通常采用最小均方误差准则)去逼近系统的特性。如果在S 平面上去逼近,就得到模拟滤波器;如果在z 平面上去逼近,就得到数字滤波器。

第一节 IIR 数字滤波器的设计步骤

IIR 数字滤波器的设计一般有两种方法:一个是借助模拟滤波器的设计方法进行。其设计步骤是,先设计模拟滤波器,再按照某种方法转换成数字滤波器。这种方法比较容易一些,因为模拟滤波器的设计方法已经非常成熟,不仅有完整的设计公式,还有完善的图表供查阅;另外一种直接在频率或者时域内进行,由于需要解联立方程,设计时需要计算机做辅助设计。其设计步骤是:先设计过渡模拟滤波器得到系统函数)(s H a ,然后将)(s H a 按某种方法转换成数字滤波器的

系统函数)(z H 。这是因为模拟滤波器的设计方法已经很成熟,不仅有完整设计公式,还有完善的图表和曲线供查阅;另外,还有一些典型的优良滤波器类型可供我们使用。

为了保证转换后的)(z H 稳定且满足技术指标要求,对转换关系提出两点要求:

(1)因果稳定的模拟滤波器转换成数字滤波器,仍是因果稳定的。

(2)数字滤波器的频率相应模仿模拟滤波器的频响特性,s 平面的虚轴映射为

z 平面的单位圆,相应的频率之间呈线性关系。

利用模拟滤波器成熟的理论设计IIR 数字滤波器的过程是:

(1)确定数字低通滤波器的技术指标:通带边界频率p ω、通带最大衰减p α、阻带截止频率s ω、阻带最小衰减s α。

(2)将数字低通滤波器的技术指标转换成相应的模拟低通滤波器的技术指标。

(3)按照模拟低通滤波器的技术指标设计过渡模拟低通滤波器。

(4)用所选的转换方法,将模拟滤波器)(s H a 转换成数字低通滤波器系统函

数)(z H 。

IIR 数字滤波器的设计流程图如下:

图2-1 IIR 数字滤波器的设计步骤流程图

成熟的模拟滤波器设计方法主要有脉冲响应不变法和双线性变换法。

第二节 用脉冲相应不变法设计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 变换与模拟信号的拉普拉斯变换的关系得

∑∑∞-∞=∞-∞=-??? ??-=Ω-=k a k s a g z k T j s X T jk s X T z X xT π21)(1|)( (式2-2)

则可看出,脉冲响应不变法将模拟滤波器的S 平面变换成数字滤波器的Z 平面,这个从s 到z 的变换z =e sT 是从S 平面变换到Z 平面的标准变换关系式。

图2-2 脉冲响应不变法的映射关系

由(2-2)式,数字滤波器的频率响应和模拟滤波器的频率响应间的关系为

∑∞-∞=??? ??-=k a j T k j H T e H πωω21

)( (式2-3)

这就是说,数字滤波器的频率响应是模拟滤波器频率响应的周期延拓。正如采样定理所讨论的,只有当模拟滤波器的频率响应是限带的,且带限于折叠频率以内时,即

0)(=Ωj H a 2s

T Ω=≥Ωπ (式2-4)

才能使数字滤波器的频率响应在折叠频率以内重现模拟滤波器的频率响应,而不产生混叠失真,即

??? ??=T j H T e H a e j ωω1)( πω< (式2-5)

但是,任何一个实际的模拟滤波器频率响应都不是严格限带的,变换后就会产生周期延拓分量的频谱交叠,即产生频率响应的混叠失真。这时数字滤波器的频响就不同于原模拟滤波器的频响,而带有一定的失真。当模拟滤波器的频率响应在折叠频率以上处衰减越大、越快时,变换后频率响应混叠失真就越小。这时,采用脉冲响应不变法设计的数字滤波器才能得到良好的效果。

S 平面

图2-3脉冲响应不变法中的频响混叠现象

对某一模拟滤波器的单位冲激响应h a(t)进行采样,采样频率为f s,若使f s 增加,即令采样时间间隔(T=1/f s)减小,则系统频率响应各周期延拓分量之间相距更远,因而可减小频率响应的混叠效应。

二、脉冲响应不变法优缺点

从以上讨论可以看出,脉冲响应不变法使得数字滤波器的单位脉冲响应完全模仿模拟滤波器的单位冲激响应,也就是时域逼近良好,而且模拟频率Ω和数字频率ω之间呈线性关系ω=ΩT。因而,一个线性相位的模拟滤波器(例如贝塞尔滤波器)通过脉冲响应不变法得到的仍然是一个线性相位的数字滤波器。

脉冲响应不变法的最大缺点是有频率响应的混叠效应。所以,脉冲响应不变法只适用于限带的模拟滤波器(例如,衰减特性很好的低通或带通滤波器),而且高频衰减越快,混叠效应越小。至于高通和带阻滤波器,由于它们在高频部分不衰减,因此将完全混淆在低频响应中。如果要对高通和带阻滤波器采用脉冲响应不变法,就必须先对高通和带阻滤波器加一保护滤波器,滤掉高于折叠频率以上的频率,然后再使用脉冲响应不变法转换为数字滤波器。当然这样会进一步增加设计复杂性和滤波器的阶数。

第三节双线性变换法设计IIR数字滤波器

一、设计原理

脉冲响应不变法的主要缺点是产生频率响应的混叠失真。这是因为从S平面到Z平面是多值的映射关系所造成的。为了克服这一缺点,可以采用非线性频率压缩方法,将整个频率轴上的频率范围压缩到-π/T~π/T之间,再用z=e sT转换到Z平面上。也就是说,第一步先将整个S平面压缩映射到S1平面的-π/T~π/T一条横带里;第二步再通过标准变换关系z=e s1T将此横带变换到整个Z平面上去。这样就使S平面与Z平面建立了一一对应的单值关系,消除了多值变换性,也就消除了频谱混叠现象,映射关系如图2-3所示。

图2-4双线性变换的映射关系

为了将S平面的整个虚轴jΩ压缩到S1平面jΩ1轴上的-π/T到π/T段上,可以通过以下的正切变换实现

?

?

?

?

=

Ω

2

tan

2

1

T

T

(式2-6)

式中,T仍是采样间隔。

当Ω1由-π/T经过0变化到π/T时,Ω由-∞经过0变化到+∞,也即映射了整个jΩ轴。将式(2-6)写成

2/

2/

2/

2/

1

1

1

.

2

T

j

T

j

T

j

T

j

e

e

e

e

T

j

Ω

-

Ω

Ω

Ω

+

-

=

Ω(式2-7)

将此关系解析延拓到整个S平面和S1平面,令jΩ=s,jΩ1=s1,则得

Z平面

S

1

平面

S平面

T s T

s T s T s T s T s i i i i i e e T T s T e e e e T s ----+-=??? ??=+-=11.22tanh 2.21

12/2/2/2/ (式2-8) 再将S1平面通过以下标准变换关系映射到Z 平面

T s e z 1=(式2-9)

从而得到S 平面和Z 平面的单值映射关系为:

11112--+-=z z

T s (式2-10)

s

T s T s T

s T z -+=-+

=

2

22121(式2-11) 式(2-10)与式(2-11)是S 平面与Z 平面之间的单值映射关系,这种变换都是两个线性函数之比,因此称为双线性变换

式(2-6)与式(2-10)的双线性变换符合映射变换应满足的两点要求。 首先,把z =e j ω,可得

Ω=??? ??=+-=--j T j e e

T s j j 2tan 2

112ωωω(式2-12) 即S 平面的虚轴映射到Z 平面的单位圆。

其次,将s =σ+j Ω代入式(2-12),得

Ω

--Ω++=j T j T

z σσ2

2

(式2-13) 因此

222222Ω

+??? ??-Ω

+??

? ??+=σσT T z (式2-14)

由此看出,当σ<0时,|z |<1;当σ>0时,|z |>1。也就是说,S 平面的左半平面映射到Z 平面的单位圆内,S 平面的右半平面映射到Z 平面的单位圆外,S 平面的虚轴映射到Z 平面的单位圆上。因此,稳定的模拟滤波器经双线性变换后所得的数字滤波器也一定是稳定的。

二、双线性变换法优缺点

双线性变换法与脉冲响应不变法相比,其主要的优点是避免了频率响应的混叠现象。这是因为S 平面与Z 平面是单值的一一对应关系。S 平面整个j Ω轴单值地对应于Z 平面单位圆一周,即频率轴是单值变换关系。这个关系如式(2-10)所示,重写如下:

??? ??=Ω2tan 2ωT (式2-15)

上式表明,S 平面上Ω与Z 平面的ω成非线性的正切关系,如图2-4所示。

由图2-4看出,在零频率附近,模拟角频率Ω与数字频率ω之间的变换关系接近于线性关系;但当Ω进一步增加时,ω增长得越来越慢,最后当Ω→∞时,ω终止在折叠频率ω=π处,因而双线性变换就不会出现由于高频部分超过折叠频率而混淆到低频部分去的现象,从而消除了频率混叠现象。

图2-5双线性变换法的频率变换关系

但是双线性变换的这个特点是靠频率的严重非线性关系而得到的,如式(2-12)及图2-4所示。由于这种频率之间的非线性变换关系,就产生了新的问题。首先,一个线性相位的模拟滤波器经双线性变换后得到非线性相位的数字滤波器,不再保持原有的线性相位了;其次,这种非线性关系要求模拟滤波器的幅频响应必须是分段常数型的,即某一频率段的幅频响应近似等于某一常数(这正是一般典型的低通、高通、带通、带阻型滤波器的响应特性),不然变换所产生的数字滤波器幅频响应相对于原模拟滤波器的幅频响应会有畸变,如图2-5所示。

图2-6双线性变换法幅度和相位特性的非线性映射对于分段常数的滤波器,双线性变换后,仍得到幅频特性为分段常数的滤波器,但是各个分段边缘的临界频率点产生了畸变,这种频率的畸变,可以通过频率的预畸变来加以校正。也就是将临界模拟频率事先加以畸变,然后经变换后正好映射到所需要的数字频率上。

第三章IIR滤波器的MATLAB设计

MATLAB是矩阵实验室(Matrix Laboratory)之意。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多.在新的版本中也加入了对C,FORTRAN,c++ ,JAVA的支持.可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用,非常的方便。

模拟滤波器的理论和设计方法已发展得相当成熟,且有一些典型的模拟滤波器供我们选择,如巴特沃斯(Butterworth )滤波器、切比雪夫(Chebyshev)滤波器、椭圆(Cauer )滤波器、贝塞尔(Bessel )滤波器等,这些典型的滤波器各有特点。

用MATLAB进行数字滤波器的设计的步骤如下:

(1)将设计指标归一化处理。如果采用双线性变换法,还需进行预畸变。(2)根据归一化频率,确定最小阶数N和频率参数Wn。可供选用的阶数择函数有:buttord,cheblord,cheb2ord,ellipord等。

(3)运用最小阶数N设计模拟低通滤波器原型。模拟低通滤波器的创建函数有:buttap,cheblap,cheb2ap,ellipap和besselap,这些函数输出的是零极点式形式,还要用zp2tf函数转换成分子分母多项式形式。如果想根据最小阶数直接设计模拟低通滤波器原型,可用butter,chebyl,cheby2,ellip,bessel等函数,只是注意要将函数中的Wn 设为1。

(4)根据第2步的频率参数Wn,模拟低通滤波原型转换模拟低通、高通、带通、带阻滤波器,可用函数分别是:lp21p,lp2hp,lp2bp,lp2bs。

(5)运用脉冲响应不变法或双线性变法把模滤波器转数字滤波器,调用的函数是impinvar和bilinear。脉冲响应不变法适用于采样频率大于4倍截止频率的锐截止低通带通滤波器,而双线性变换法适合于相位特性要求不高

的各型滤波器。

(6) 根据输出的分子分母系数,调用函数buttord 计算N 和wc ,有系数向量

可以写出数字滤波器系统函数Z,再用freqz 函数验证设计结果。

第一节 IIR 数字滤波器的典型设计法

设计巴特沃斯数字低通滤波器和椭圆数字低通滤波器,要求通带边界频fp=2.1kHZ ,通带最大衰减Rp=0.5dB ;阻带边界频率fs=8kHZ ,阻带最小衰减Rs=30dB,采样频率为Fs=20kHZ 。

低通巴特沃斯滤波器设计步骤如下:

(1) 确定阶数N 。

233.1121101101.01.0=--=p s R R sp k

8.322==p s sp f f ππλ

,35.38.3lg 233

.112lg ==N 取N=4

(2) 求极点

π530j e p =,π541j e p =,πj e p =2,π563j e p =,π574j e p =

归一化低通原型系统函数为

∏=-

=40

)(1)(k k a p p p G

由N=4直接查表得到:

极点:9239.03827.0j ±- 3827.09239.0j ±-

归一化低通滤波器系统函数为

011223341)(b p b p b p b p p G a ++++=

式中,=0b 0.0000,=1b 0.0999,=2b 0.1914,=3b 0.0252

(3) 将)(p G a 去归一化最终得到

401312223345)(c c c a b s b s b s b s s H Ω+Ω+Ω+Ω+Ω=

通过计算可以总结出过程太麻烦,而且容易出错,结果不直观。

下面用M 程序设计来实现

用脉冲响应不变法设计的巴特沃斯数字低通滤波器的M 程序如下:

fp=2100;

fs=8000;

Fs=20000;

Rp=0.5;

Rs=30;

T=1/Fs; %设计指标

W1p=fp/Fs*2;W1s=fs/Fs*2;%求归一化频率

[N,Wn]=buttord(W1p,W1s,Rp,Rs,'s');

%确定butterworth 的最小介数N 和频率参数Wn

[z,p,k]=buttap(N); %设计模拟低通原型的零极点增益参数

[bp,ap]=zp2tf(z,p,k); %将零极点增益转换成分子分母参数

[bs,as]=lp2lp(bp,ap,Wn*pi*Fs);%将低通原型转换为模拟低通

[bz,az]=impinvar(bs,as,Fs); %用脉冲响应不变法进行模数变换

sys=tf(bz,az,T); %给出传输函数H(Z)

[H,W]=freqz(bz,az,512,Fs); %生成频率响应参数

subplot(2,1,1);

plot(W,20*log10(abs(H))); %绘制幅频响应

grid on; %加坐标网格

xlabel('频率/Hz');

ylabel('振幅/dB');

subplot(2,1,2);

plot(W,abs(H)); grid on;

xlabel('频率/Hz');

ylabel('振幅/H');

运行后的波形如下:

图3-1 典型滤波器在Matlab 上运行波形

运行结果:

N =4

bz = 0.0000 0.0999 0.1914 0.0252

az= 1.0000 -1.4336 1.0984 -0.4115 0.0627

可以得出:只需编程,结果非常直观。

双线性变换法设计步骤如下:

(1)首先写出该滤波器的系统函数RC a a s a

s H 1

,)(=+=

(2)利用双线性变换法转换,数字滤波器的系统函数)(1z H 为

121111211)1(|

)()(11--+-=++==--z a z a s H z H z z T s a 22,221+-=+=aT aT a aT aT

a

用双线性变换法设计椭圆数字低通滤波器的M程序如下:

fs=20000;

wp=2*pi*2100/fs;

ws=2*pi*8000/fs;

Rp=0.5;

Rs=30;

Ts=1/fs;

Wp=2/Ts*tan(wp/2);Ws=2/Ts*tan(ws/2); %按频率转换公式进行转换

[N,Wn]=ellipord(Wp,Ws,Rp,Rs,'s'); %计算模拟滤波器的最小阶数

[z,p,k]=ellipap(N,Rp,Rs);%设计模拟原型滤波器

[Bap,Aap]=zp2tf(z,p,k); %零点极点增益形式转换为传递函数形式

[b,a]=lp2lp(Bap,Aap,Wn); %低通转换为低通滤波器的频率转化

[bz,az]=bilinear(b,a,fs); %运用双线性变换法得到数字滤波器传递函数 [H,f]=freqz(bz,az,512,fs);

subplot(2,1,1);

plot(f,20*log10(abs(H)));

title('N=2 频率响应');

grid on;

xlabel('频率/Hz');

ylabel('振幅/dB');

subplot(2,1,2);

plot(f,abs(H)); grid on;

xlabel('频率/Hz');

ylabel('振幅/H');

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开始

IIR数字滤波器设计原理

IIR 数字滤波器设计原理 利用双线性变换设计IIR 滤波器(只介绍巴特沃斯数字低通滤波器的设计),首先要设计出满足指标要求的模拟滤波器的传递函数)(s H a ,然后由)(s H a 通过双线性变换可得所要设计的IIR 滤波器的系统函数)(z H 。 如果给定的指标为数字滤波器的指标,则首先要转换成模拟滤波器的技术指标,这里主要是边界频率 s p w w 和的转换,对s p αα和指标不作变化。边界频率的转换关系为)21tan(2w T =Ω。接着,按照模拟低通滤波器的技术指标根据相应 设计公式求出滤波器的阶数N 和dB 3截止频率c Ω;根据阶数N 查巴特沃斯归一 化低通滤波器参数表,得到归一化传输函数 )(p H a ;最后,将c s p Ω=代入)(p H a 去归一,得到实际的模拟滤波器传输函数)(s H a 。之后,通过双线性变换法转换公式 11 112--+-=z z T s ,得到所要设计的IIR 滤波器的系统函数)(z H 。 步骤及内容 1) 用双线性变换法设计一个巴特沃斯IIR 低通数字滤波器。设计指标参数为: 在通带内频率低于π2.0时,最大衰减小于dB 1;在阻带内[]ππ,3.0频率区间上,最小衰减大于dB 15。 2) 以π02.0为采样间隔,绘制出数字滤波器在频率区间[]2/,0π上的幅频响应特 性曲线。 3) 程序及图形 程序及实验结果如下: %%%%%%%%%%%%%%%%%%

%iir_1.m %lskyp %%%%%%%%%%%%%%%%%% rp=1;rs=15; wp=.2*pi;ws=.3*pi; wap=tan(wp/2);was=tan(ws/2); [n,wn]=buttord(wap,was,rp,rs,'s'); [z,p,k]=buttap(n); [bp,ap]=zp2tf(z,p,k); [bs,as]=lp2lp(bp,ap,wap); [bz,az]=bilinear(bs,as,.5); [h,f]=freqz(bz,az,256,1); plot(f,abs(h)); title('双线性z 变换法获得数字低通滤波器,归一化频率轴'); xlabel('\omega/2\pi'); ylabel('低通滤波器的幅频相应');grid; figure; [h,f]=freqz(bz,az,256,100); ff=2*pi*f/100; absh=abs(h); plot(ff(1:128),absh(1:128)); title('双线性z 变换法获得数字低通滤波器,频率轴取[0,\pi/2]'); xlabel('\omega'); ylabel('低通滤波器的幅频相应');grid on; 运行结果: 00.050.10.150.20.25 0.30.350.40.450.500.1 0.2 0.3 0.40.50.60.70.8 0.9 1 双线性z 变换法获得数字低通滤波器,归一化频率轴 ω/2π低通滤波器的幅频相应

数字滤波器的优化设计

数字滤波器的优化设计浅析 201120003025 何志会

数字滤波器的优化设计浅析 摘要 当前,在数字信号处理和电子应用技术领域,数字滤波器以其精度高、灵活性好、便于大规模集成等突出优点,占据了至关重要的地位。按冲击响应持续时间,数字滤波器可分为有限冲击响应(FIR)滤波器和无限冲击响应(IIR)滤波器。传统的数字滤波器的设计方法有窗函数法、频率采样法和等波动最佳逼近法等。但是随着时代的发展,应用领域的广泛增加、信号处理要求变高以及计算复杂程度的不断提高,对于数字滤波器软件和硬件的要求也越来越专业、复杂。因此,数字滤波器的优化设计也显得更加重要。近年来,国内外对数字滤波器的优化算法进行了较多的研究,提出了很多优化方法和算法,如:人工鱼群算法、粒子群算法、遗传算法、最小P误差法、小波逼近法等。这些算法大大提高了数字滤波器的应用范围,使结果更加逼近于目标函数。硬件上,FPGA以其体积小、速度快、重量轻、功耗低、可靠性高、成本低等优点在数字滤波器上得到应用,具有很好的发展前景。 关键词:数字滤波器;优化;算法

Optimization design of FIR digital filter Abstract At present, the digital filter with its high precision, flexibility, ease of large-scale integration and other advantages, occupies a crucial position in the field of digital signal processing and application of technology.According to the duration of the impulse response, digital filter can be divided into finite impulse response (FIR) filters and infinite impulse response (IIR) filter. Traditional methods of digital filter design use window function method, sampling method, frequency fluctuations and the best approximation method. But with the development of the times, a wide range of applications increases, the signal processing requirements of high change and increasing complexity of the calculations for the digital filter software and hardware ,requirements have become more specialized and complex. Therefore, the digital filter design optimization is even more important. In recent years, domestic and international digital filter optimization algorithm for more research, made a lot of optimization methods and algorithms, such as: artificial fish school algorithm, particle swarm optimization, genetic algorithm, the smallest P error method, wavelet approximation method . These algorithms greatly improve the application of digital filters, so that the results more close to the target function. Hardware, FPGA with its small size, fast, light weight, low power consumption, high reliability and low cost have been applied in the digital filter, with good prospects for development. Key words:Digital filter ;Optimization;;algorithm

基于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仿真

东北大学 研究生考试试卷 考试科目: 课程编号: 阅卷人: 考试日期: 姓名:xl 学号: 注意事项 1.考前研究生将上述项目填写清楚. 2.字迹要清楚,保持卷面清洁. 3.交卷时请将本试卷和题签一起上交. 4.课程考试后二周内授课教师完成评卷工作,公共课成绩单与试卷交研究生院培养办公室, 专业课成绩单与试卷交各学院,各学院把成绩单交研究生院培养办公室. 东北大学研究生院培养办公室

数字滤波器设计 技术指标: 通带最大衰减: =3dB , 通带边界频率: =100Hz 阻带最小衰减: =20dB 阻带边界频率: =200Hz 采样频率:Fs=200Hz 目标: 1、根据性能指标设计一个巴特沃斯低通模拟滤波器。 2、通过双线性变换将该模拟滤波器转变为数字滤波器。 原理: 一、模拟滤波器设计 每一个滤波器的频率范围将直接取决于应用目的,因此必然是千差万别。为了使设计规范化,需要将滤波器的频率参数作归一化处理。设所给的实际频 率为Ω(或f ),归一化后的频率为λ,对低通模拟滤波器令λ=p ΩΩ/,则1 =p λ, p s s ΩΩ=/λ。令归一化复数变量为p ,λj p =,则p p s j j p Ω=ΩΩ==//λ。所以巴 特沃思模拟低通滤波器的设计可按以下三个步骤来进行。 (1)将实际频率Ω规一化 (2)求Ωc 和N 11010/2-=P C α s p s N λααlg 1 10 110lg 10 /10/--= 这样Ωc 和N 可求。 p x fp s x s f

根据滤波器设计要求=3dB ,则C =1,这样巴特沃思滤波器的设计就只剩一个参数N ,这时 N p N j G 222 )/(11 11)(ΩΩ+= += λλ (3)确定)(s G 因为λj p =,根据上面公式有 N N N p j p p G p G 22)1(11 )/(11)()(-+= += - 由 0)1(12=-+N N p 解得 )221 2exp(πN N k j p k -+=,k =1,2, (2) 这样可得 1 )21 2cos(21 ) )((1 )(21+-+-= --= -+πN N k p p p p p p p G k N k k 求得)(p G 后,用p s Ω/代替变量p ,即得实际需要得)(s G 。 二、双线性变换法 双线性变换法是将s 平面压缩变换到某一中介1s 平面的一条横带里,再通过标准变换关系)*1exp(T s z =将此带变换到整个z 平面上去,这样就使s 平面与z 平面之间建立一一对应的单值关系,消除了多值变换性。 为了将s 平面的Ωj 轴压缩到1s 平面的1Ωj 轴上的pi -到pi 一段上,可以通过以下的正切变换来实现: )21 tan(21T T Ω= Ω 这样当1Ω由T pi -经0变化到T pi 时,Ω由∞-经过0变化到∞+,也映射到了整个Ωj 轴。将这个关系延拓到整个s 平面和1s 平面,则可以得到

FIR数字滤波器设计及MATLAB使用【重点】

cheng 《数字信号处理》 课程设计报告 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 n ,使传输函数()jw H e 满足一定的幅度特性和线性相位要求。由于FIR 滤波器很容易实现严格的线性相位,所以FIR 数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。 设计过程一般包括以下三个基本问题: (1) 根据实际要求确定数字滤波器性能指标; (2) 用一个因果稳定的系统函数去逼近这个理想性能指标; (3) 用一个有限精度的运算去实现这个传输函数。 三、设计原理 FIR 滤波器设计的任务是选择有限长度的()h n ,使传输函数()jw H e 满足一定的幅度特性和线性相位要求。由于FIR 滤波器很容易实现严格的线性相位,所以FIR 数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。 设计过程一般包括以下三个基本问题: (1) 根据实际要求确定数字滤波器性能指标; (2) 用一个因果稳定的系统函数去逼近这个理想性能指标; (3) 用一个有限精度的运算去实现这个传输函数。 3.1窗函数法 设计FIR 数字滤波器的最简单的方法是窗函数法,通常也称之为傅立叶级数法。FIR 数字滤波器的设计首先给出要求的理想滤波器的频率响应()jw d H e ,设计一个FIR 数字滤波器频率响应()jw H e ,去逼近理想的滤波响应()jw d H e 。然而,

数字滤波器的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

脉冲响应不变法设计数字低通滤波器

燕山大学 课程设计说明书 题目:脉冲响应不变法设计数字低通滤波器 学院(系):电气工程学院 年级专业:09级精密仪器及机械2班 学号: 0901******** 学生姓名:范程灏 指导教师:刘永红 教师职称:讲师

电气工程学院《课程设计》任务书 课程名称:数字信号处理课程设计 基层教学单位:仪器科学与工程系指导教师: 学号学生姓名(专业)班级设计题目7、脉冲响应不变法设计数字低通滤波器 设 计技术参数给定技术指标为:Hz f p 100 =,Hz f s 300 =,dB p 3 = α,dB s 20 = α,采样频率Hz F s 1000 =。 设 计 要 求 设计Butterworth低通滤波器,用脉冲响应不变法转换成数字滤波器。 参考资料数字信号处理方面资料MATLAB方面资料 周次前半周后半周 应完成内容收集消化资料、学习MA TLAB软件, 进行相关参数计算 编写仿真程序、调试 指导教师签字基层教学单位主任签字

目录 第1章前言 (3) 第2章数字信号处理部分基础知识 (3) 第3章 MATLAB部分基础知识 (8) 3.1 MATLAB介绍 (8) 3.2 MATLAB命令介绍 (8) 第4章仿真过程及仿真图 (9) 4.1 仿真程序 (9) 4.2 仿真波形 (10) 第5章设计结论 (10) 第6章参考文献 (11)

第一章 前言 《数字信号处理》课程设计是在学生完成数字信号处理和MATLAB 的结合后的基本实验以后开设的。本课程设计的目的是为了让学生综合数字信号处理和MATLAB 并实现一个较为完整的小型滤波系统。这一点与验证性的基本实验有本质性的区别。开设课程设计环节的主要目的是通过系统设计、软件仿真、程序安排与调试、写实习报告等步骤,使学生初步掌握工程设计的具体步骤和方法,提高分析问题和解决问题的能力,提高实际应用水平。 IIR 数字滤波器具有无限宽的冲激响应,与模拟滤波器相匹配,所以IIR 滤波器的设计可以采取在模拟滤波器设计的基础上进一步变换的方法。其设计方法主要有经典设计法、直接设计法和最大平滑滤波器设计法。FIR 数字滤波器的单位脉冲响应是有限长序列。它的设计问题实质上是确定能满足所要求的转移序列或脉冲响应的常数问题,设计方法主要有窗函数法、频率采样法和等波纹最佳逼近法等。 第2章 数字信号处理基础知识部分 2.1巴特沃斯滤波器的幅度平方函数及其特点 巴特沃斯模拟滤波器幅度平方函数的形式是 )N c N c a j j j H 222 )/(11 )/(11ΩΩ+= ΩΩ+= Ω (5-6)

实验三FIR数字滤波器的设计-7页word资料

实验三 FIR数字滤波器的设计 一、实验目的 1.掌握用窗函数法,频率采样法及优化设计法设计FIR滤波器的 原理及方法,熟悉响应的计算机编程; 2.熟悉线性相位FIR滤波器的幅频特性和相频特性; 3.了解各种不同窗函数对滤波器性能的影响。 二、实验原理与方法 线性相位实系数FIR滤波器按其N值奇偶和h(n)的奇偶对称性分为四种: 1、h(n)为偶对称,N为奇数 H(e jω)的幅值关于ω=0,π,2π成偶对称。 2、h(n)为偶对称,N为偶数 H(e jω)的幅值关于ω=π成奇对称,不适合作高通。 3、h(n)为奇对称,N为奇数 H(e jω)的幅值关于ω=0,π,2π成奇对称,不适合作高通和低通。 4、h(n)为奇对称,N为偶数

H(e jω) ω=0、2π =0,不适合作低通。 (一) 窗口法 窗函数法设计线性相位FIR滤波器步骤 ?确定数字滤波器的性能要求:临界频率{ωk},滤波器单位脉冲响应 长度N; ?根据性能要求,合理选择单位脉冲响应h(n)的奇偶对称性,从而确 定理想频率响应H d (e jω)的幅频特性和相频特性; ?求理想单位脉冲响应h d(n),在实际计算中,可对H d(e jω)按M(M远 大于N)点等距离采样,并对其求IDFT得h M (n),用h M (n)代替h d (n); ?选择适当的窗函数w(n),根据h(n)= h d(n)w(n)求所需设计的FIR 滤波器单位脉冲响应; ?求H(e jω),分析其幅频特性,若不满足要求,可适当改变窗函数形式或长度N,重复上述设计过程,以得到满意的结果。 窗函数的傅式变换W(e jω)的主瓣决定了H(e jω)过渡带宽。W(e jω)的旁瓣大小和多少决定了H(e jω)在通带和阻带范围内波动幅度,常用的几种窗函数有: ?矩形窗 w(n)=R N(n); ?Hanning窗; ?Hamming窗 ;

实验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; 课程名称:数字信号处理 实验成绩: 指导教师: 实 验 报 告 院系: 信息工程学院 班级: 电信二班 学号: 姓名: 日期:

数字信号处理-低通滤波器设计实验

实验报告 课程名称:数字信号处理 实验名称:低通滤波器设计实验 院(系): 专业班级: 姓名: 学号: 指导教师: 一、实验目的: 掌握IIR数字低通滤波器的设计方法。 二、实验原理: 2.1设计巴特沃斯IIR滤波器 在MATLAB下,设计巴特沃斯IIR滤波器可使用butter 函数。 Butter函数可设计低通、高通、带通和带阻的数字和模拟IIR滤波器,其特性为使通带内的幅度响应最大限度地平坦,但同时损失截止频率处的下降斜度。在期望通带平滑的情况下,可使用butter函数。butter函数的用法为:

[b,a]=butter(n,Wn)其中n代表滤波器阶数,W n代表滤波器的截止频率,这两个参数可使用buttord函数来确定。buttord函数可在给定滤波器性能的情况下,求出巴特沃斯滤波器的最小阶数n,同时给出对应的截止频率Wn。buttord函数的用法为:[n,Wn]= buttord(Wp,Ws,Rp,Rs)其中Wp和Ws分别是通带和阻带的拐角频率(截止频率),其取值范围为0至1之间。当其值为1时代表采样频率的一半。Rp和Rs分别是通带和阻带区的波纹系数。 2.2契比雪夫I型IIR滤波器。 在MATLAB下可使用cheby1函数设计出契比雪夫I 型IIR滤波器。 cheby1函数可设计低通、高通、带通和带阻契比雪夫I 型滤IIR波器,其通带内为等波纹,阻带内为单调。契比雪夫I型的下降斜度比II型大,但其代价是通带内波纹较大。cheby1函数的用法为:[b,a]=cheby1(n,Rp,Wn,/ftype/)在使用cheby1函数设计IIR滤波器之前,可使用cheblord 函数求出滤波器阶数n和截止频率Wn。cheblord函数可在给定滤波器性能的情况下,选择契比雪夫I型滤波器的最小阶和截止频率Wn。cheblord函数的用法为: [n,Wn]=cheblord(Wp,Ws,Rp,Rs)其中Wp和Ws分别是通带和阻带的拐角频率(截止频率),其取值范围为0至1之间。当其值为1时代表采样频率的一半。Rp和Rs分别是通带和阻带区的波纹系数。 三、实验要求: 利用Matlab设计一个数字低通滤波器,指标要求如下:

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实现)

DSP 设计滤波器报告 姓名:张胜男 班级:07级电信(1)班 学号:078319120 一·低通滤波器的设计 (一)实验目的:掌握IIR 数字低通滤波器的设计方法。 (二)实验原理: 1、滤波器的分类 滤波器分两大类:经典滤波器和现代滤波器。 经典滤波器是假定输入信号)(n x 中的有用成分和希望取出的成分各自占有不同的频带。这样,当)(n x 通过一个线性系统(即滤波器)后可讲欲去除的成分有效的去除。 现代滤波器理论研究的主要内容是从含有噪声的数据记录(又称时间序列)中估计出信号的某些特征或信号本身。 经典滤波器分为低通、高通、带通、带阻滤波器。每一种又有模拟滤波器(AF )和数字滤波器(DF )。对数字滤波器,又有IIR 滤波器和FIR 滤波器。 IIR DF 的转移函数是: ∑∑=-=-+==N k k k M r r r z a z b z X z Y z H 10 1)()()( FIR DF 的转移函数是: ∑-=-=10)()(N n n z n h z H FIR 滤波器可以对给定的频率特性直接进行设计,而IIR 滤波器目前最通用的方法是利用已经很成熟的模拟滤波器的设计方法进行设计。 2、滤波器的技术要求 低通滤波器: p ω:通带截止频率(又称通带上限频率) s ω:阻带下限截止频率 p α:通带允许的最大衰减 s α:阻带允许的最小衰减 (p α,s α的单位dB ) p Ω:通带上限角频率 s Ω:阻带下限角频率 (s p p T ω=Ω,s s s T ω=Ω)即 C p p F ωπ2=Ω C s s F ωπ2=Ω 3、IIR 数字滤波器的设计步骤:

高级数字滤波器设计及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 ρ>,如果有再在该点附近找出局部极值点,并用该,点代替原来的

相关文档
相关文档 最新文档