76范文网为您提供各类范文参考!
当前位置:76范文网 > 知识宝典 > 范文大全 > 基于MATLAB的IIR数字滤波器的设计与仿真毕业设计

基于MATLAB的IIR数字滤波器的设计与仿真毕业设计

来源:76范文网 | 时间:2019-06-13 07:51:27 | 移动端:基于MATLAB的IIR数字滤波器的设计与仿真毕业设计

基于MATLAB的IIR数字滤波器的设计与仿真毕业设计 本文简介:

本科毕业设计论文题目基于MATLAB的IIR数字滤波器的设计与仿真专业名称电子信息工程学生姓名指导教师完成时间20XX年6月目录摘要1ABSTRACT2前言3第1章滤波器的基本概念41.1滤波器的定义41.2滤波器的发展41.3滤波器的分类5第2章滤波器的原理与设计72.1模拟滤波器的原理与设计72

基于MATLAB的IIR数字滤波器的设计与仿真毕业设计 本文内容:

本科毕业设计论文


基于MATLAB的IIR数字滤波器的设计与仿真
专业名称电子信息工程
学生姓名指导教师完成时间
20XX年6月目录摘

1
ABSTRACT
2


3
第1章
滤波器的基本概念
4
1.1
滤波器的定义
4
1.2
滤波器的发展
4
1.3
滤波器的分类
5
第2章
滤波器的原理与设计
7
2.1
模拟滤波器的原理与设计
7
2.2
数字滤波器的原理与设计
8
第3章
IIR数字滤波器的设计
10
3.1
IIR数字滤波器简介
10
3.2
IIR数字滤波器的主要技术指标
10
3.3
IIR数字滤波器的设计过程
12
3.3.1用脉冲相应不变法设计IIR数字滤波器
13
3.3.2双线性变换法设计IIR数字滤波器
16
第4章
IIR数字滤波器的实现
20
4.1
matlab简介
20
4.1.1
matlab的概况
20
4.1.2
matlab的语言特点
20
4.1.3
matlab的功能
22
4.2
利用模拟原型进行IIR数字滤波器的设计和仿真
23
4.2.1巴特沃斯(Butterworth)和椭圆数字低通滤波器的设计
24
4.2.2切比雪夫(Chebyshev)数字滤波器的设计
30
4.3
IIR数字滤波器的直接设计法
34
第5章
IIR数字滤波器的综合设计和仿真
40
5.1数字低通滤波器设计实例与仿真
40
5.2数字带通滤波器设计实例与仿真
42


45


46
参考文献
47
毕业设计小结
48摘
要在现代通信系统中,由于信号中经常混有各种噪声和干扰,所以很多信号分析都是基于滤波器而进行的,而数字滤波器是通过数值运算实现滤波,具有处理精度高、稳定、灵活、不存在阻抗匹配问题等优点,可以实现模拟滤波器无法实现的特殊滤波功能。数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。实现IIR滤波器的阶次较低,所用的存储单元较少,效率高,精度高,而且能够保留一些模拟滤波器的优良特性,因此应用很广。Matlab软件以矩阵运算为基础,把计算、可视化及程序设计有机融合到交互式工作环境中,并且为数字滤波的研究和应用提供了一个直观、高效、便捷的利器。尤其是Matlab中的信号处理工具箱使各个领域的研究人员可以直观方便地进行科学研究与工程应用。
本文根据模拟滤波器的设计原理,提出了IIR数字滤波器的设计方法,并在MATLAB环境下实现了IIR
数字滤波器的设计和仿真。其主要内容概括为:首先对滤波器的原理和设计进行了介绍;接着描述了IIR数字滤波器的基本概念,其中包括系统的描述、系统的传递函数、系统的模型;接着简单介绍MATLAB,并对数字滤波器在MATLAB环境下如何实现进行了介绍;重点描述了IIR数字滤波器的设计过程,最后对IIR滤波器进行仿真。关键词:
MATLAB,
IIR数字滤波器,
模拟滤波器
ABSTRACT
In
modern
communication
system,
because
the
signal
is
often
mixed
with
various
noise
and
interference,
so
a
lot
of
signal
analysis
are
based
on
the
filter
and
the
digital
filter,
and
through
numerical
arithmetic
to
realize
filtering,
has
high
processing
precision,
stable,
flexible,
there
is
no
problem
of
impedance
matching
and
other
advantages,
can
realize
analog
filter
can
achieve
special
filtering
function.Digital
filter
based
on
the
impulse
response
function
in
the
time
domain
characteristics,
can
be
divided
into
two
types,
namely,
infinite
impulse
response
(IIR)
digital
filters
and
finite
impulse
response
(FIR)
digital
filter.Realization
of
IIR
filter
order
is
relatively
low,
the
storage
unit
is
less,
high
efficiency,
high
precision,
and
can
retain
some
analog
filter
of
excellent
properties,
so
the
application
is
very
wide.Matlab
software
for
matrix
computation
based
on
the
calculation,
visualization,
and
the
program
design
of
the
organic
integration
of
the
interactive
environment,
and
digital
filteri
ng
for
applications
in
research
and
provides
an
intuitive,
efficient,
convenient
tool.Especially
the
Matlab
signal
processing
toolbox
to
various
fields
of
research
personnel
can
undertake
scientific
research
and
engineering
application.
In
this
paper,
according
to
the
analog
filter
design
theory,
puts
forward
the
design
of
IIR
digital
filter
method,
and
MATLAB
environment
in
the
realization
of
IIR
digital
filter
design
and
simulation.Its
main
content
is
wraparound
for:
first
on
the
filter
principle
and
design
are
introduced;
then
described
the
IIR
basic
concepts
of
digital
filter,
which
includes
system
is
described,
the
transfer
function
of
the
system,
system
model;
then
a
brief
introduction
of
the
MATLAB,
and
the
digital
filters
in
the
MATLAB
environment
how
to
realization
are
introduced;
focus
on
the
description
of
IIR
digital
filter
design
process,
the
last
of
the
IIR
filter
simulation.KEY
WORDS:
MATLAB,
IIR
digital
filter,
Dimulation
filt前
言滤波是信号处理的基础,滤波运算是信号处理中的基本运算,滤波器的设计也就相应成为数字信号处理的最基本问题之一。滤波器可广义的理解为一个信号选择系统,它让某些信号成分通过又阻止或衰减另一些成分。在更多的情况下,滤波器可理解为选频系统,如低通、高通、带通、带阻。滤波器可分为三种:模拟滤波器、采样滤波器和数字滤波器。模拟滤波器可以是由RLC构成的无源滤波器,也可以是加上运放的有源滤波器,是连续时间系统;采样滤波器由电阻、电容、电荷转移器件、运放等组成,属于离散时间系统,幅度连续;数字滤波器由加法器、乘法器、存储延迟单元、时钟脉冲发生器和逻辑单元等数字电路构成,精度高,稳定性好,不存在阻抗匹配问题,可以时分复用。
数字滤波器是具有一定传输选择特性的数字信号处理装置,其输入、输出均为数字信号,实质上是一个由有限精度算法实现的线性时不变离散系统。它的基本工作原理是利用离散系统特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用频率的信号分量通过,抑制无用的信号分量输出。数字滤波器和模拟滤波器有着相同的滤波概念,数字滤波器根据其单位脉冲响应的性质可分为无限长单位脉冲响应滤波器IIR和有限长单位脉冲响应滤波器(FIR)两种,按其频率响应特性可分为低通、高通、带通、带阻等类型,与模拟滤波器相比,数字滤波器除了具有数字信号处理的固有优点外,还有灵活性强、稳定性好、滤波精度高等优点。第1章
滤波器的基本概念
1.1
滤波器的定义滤波器是一种用来消除干扰杂讯的器件,凡是可以使信号中特定的频率成分通过,而极大地衰减或抑制其他频率成分的装置或系统都称之为滤波器,相当于频率“筛子”。
滤波器的功能就是允许某一部分频率的信号顺利的通过,而另外一部分频率的信号则受到较大的抑制,它实质上是一个选频电路。
滤波器中,把信号能够通过的频率范围,称为通频带或通带;反之,信号受到很大衰减或完全被抑制的频率范围称为阻带;通带和阻带之间的分界频率称为截止频率;理想滤波器在通带内的电压增益为常数,在阻带内的电压增益为零;实际滤波器的通带和阻带之间存在一定频率范围的过渡带。1.2
滤波器的发展在近代电信设备和各类控制系统中,滤波器应用极为广泛;在所有的电子部件中,使用最多,技术最为复杂的要算滤波器了。滤波器的优劣直接决定产品的优劣,所以,对滤波器的研究和生产历来为各国所重视。

1917年美国和德国科学家分别发明了LC滤波器,美国第一个多路复用系统的出现,20世纪50年代无源滤波器日趋成熟,60年代起由于计算机技术、集成工艺和材料工业的发展,滤波器发展上了一个新台阶,并且朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉的方向努力,70年代以后的主攻方向为小体积、多功能、高精度、稳定可靠导致RC有源滤波器、数字滤波器、开关电容滤波器和电荷转移器等各种滤波器的飞速发展,到70年代后期,上述几种滤波器的单片集成已被研制出来并得到应用,80年代,致力于各类新型滤波器的研究,
努力提高性能并逐渐扩大应用范围,90年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。当然,对滤波器本身的研究仍在不断进行。

我国于50年代后广泛使用滤波器,当时主要用于话路滤波和报路滤波。经过半个世纪的发展,我国滤波器在研制、生产和应用等方面已踏入国际发展步伐,但由于缺少专门研制机构,集成工艺和材料工业跟不上来,使得我国许多新型滤波器的研制应用与国际发展有一段距离。1.3
滤波器的分类安县好处理的类型分,滤波器分为模拟滤波器和数字滤波器。模拟滤波器由电阻,电容,电感等原器件构成;而数字滤波器则可由数字电路实现或软件实现。按脉冲响应来分类,数字滤波器分为IIR和FIR,即无限冲激响应滤波器和有限冲激响应滤波器;其中IIR网络中有反馈回路,FIR网络中没有反馈回路。从小的方面分:
a.按所处理的信号分为模拟滤波器和数字滤波器两种。
b.按所通过信号的频段分为低通、高通、带通和带阻滤波器四种。
低通滤波器:它允许信号中的低频或直流分量通过,抑制高频分量或干扰和噪声。

高通滤波器:它允许信号中的高频分量通过,抑制低频或直流分量。
带通滤波器:它允许一定频段的信号通过,抑制低于或高于该频段的信号、干扰和噪声。

带阻滤波器:它抑制一定频段内的信号,允许该频段以外的信号通过。图1.1
由通过信号的频段划分的四种滤波器c.按所采用的元器件分为无源和有源滤波器两种:

无源滤波器:仅由无源元件(R、L
和C)组成的滤波器,它是利用电容和电感元件的电抗随频率的变化而变化的原理构成的。这类滤波器的优点是:电路比较简单,不需要直流电源供电,可靠性高;缺点是:通带内的信号有能量损耗,负载效应比较明显,使用电感元件时容易引起电磁感应,当电感L较大时滤波器的体积和重量都比较大,在低频域不适用。

有源滤波器:由无源元件(一般用R和C)和有源器件(如集成运算放大器)组成。这类滤波器的优点是:通带内的信号不仅没有能量损耗,而且还可以放大,负载效应不明显,多级相联时相互影响很小,利用级联的简单方法很容易构成高阶滤波器,并且滤波器的体积小、重量轻、不需要磁屏蔽(由于不使用电感元件);缺点是:通带范围受有源器件(如集成运算放大器)的带宽限制,需要直流电源供电,可靠性不如无源滤波器高,在高压、高频、大功率的场合不适用。
第2章
滤波器的原理与设计
滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。可以设计系统的频率响应,让它满足一定的要求,从而对通过该系统的信号的某些特定的频率成分进行过滤,这就是滤波器的基本原理。如果系统是一个连续系统,则滤波器称为模拟滤波器。如果系统是一个离散系统,则滤波器称为数字滤波器。
2.1
模拟滤波器的原理与设计
模拟滤波器可以分为无源和有源滤波器,滤波器是一种能使有用信号顺利通过而同时对无用频率信号进行抑制(或衰减)的电子装置。工程上常用它来做信号处理、数据传送和抑制干扰等。以往主要采用无源元件R、L和C组成模拟滤波器,六十年代以来,集成运放获得了迅速地发展,由它和R、C组成的有源滤波器,具有不用电感、体积小、重量轻等优点。此外,由于集成运放的开环电压增益和输入阻抗均很高,而输出阻抗又很低,而且,由其构成的有源滤波器还具且一定的电压放大和缓冲作用。因此,基于放大器和R、C构成的有源滤波器应用日益广泛。模拟滤波器的设计,就是用模拟系统的系统函数去逼近所要求的理想特性。标准的模拟低通滤波器的设计公式有巴特沃思和切比雪夫等,它们都是根据幅度平方函数来确定的。
为逼近理想低通滤波器,其模拟理想低通滤波器的幅度特性可用幅度平方函数表示,即(2.1)
式中,为所设计的模拟滤波器的系统函数,它是s的有理函数;是其稳态响应,即滤波器频率特性为滤波器的稳态振幅特性。
由幅度平方函数确定的方法是:
(a)
在中,令,得到;
(b)
将的有理式进行分解,得到零点和极点。如果系统函数是最小相位函数,则s平面左半平面的零点和极点都属于,而任何在虚轴上的极点和零点都是偶次的,其中一半属于
(c)
根据具体情况,比较和的幅度特性,确定增益常数,这样就完全确定了。
在模拟滤波器中,低通滤波器的设计是最基本的,高通,带通和带阻滤波器等可以用频带变换方法由低通滤波器转变得到。
2.2
数字滤波器的原理与设计
所谓数字滤波器,是指输入、输出均为数字信号,通过一定运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的器件。数字滤波器和模拟滤波器相比,因为信号的形式和实现滤波的方法不同,数字滤波器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配等优点。
数字滤波器从功能上分类:可分为低通滤波器、高通滤波器、带通滤波器、带阻滤波器。从滤波器的网络结构或者从单位脉冲响应分类:可分为IIR滤波器(即无限长单位冲激响应滤波器)和FIR滤波器(即有限长单位冲激响应滤波器)。IIR数字滤波器可用一个n阶差分方程表示:

(2.2)
或用它的Z域系统函数:

(2.3)
对照模拟滤波器的传递函数:(2.4)
可以看出,设计数字滤波器的思路与模拟滤波器相仿,设计实质都是寻找一组系数{b,a},去逼近所求的频率响应,以便在性能上满足预定的技术要求;不同的是数字滤波器是在Z平面寻找合适的H(Z),
模拟滤波器则是在S平面用数学逼近法寻找近似的所需特性H(S)。由于模拟滤波器的设计在理论上已十分成熟,因此数字滤波器设计的关键是将H(S)变换至H(Z),即利用复值映射将模拟滤波器离散化。
已经证明,脉冲响应不变法和双线性变换法能较好地担当此任。IIR数字滤波器的单位响应是无限长的,而模拟滤波器一般都具有无限长的单位脉冲响应,故与模拟滤波器相类似。
第3章
IIR数字滤波器的设计
3.1
IIR数字滤波器简介
数字滤波器在数字信号处理的各种应用中发挥着十分重要的作用。它是通过对采样数据信号进行数学运算处理来达到滤波的目的。其中无限冲击响应数字滤波器也称IIR是采用对离散采样数据作差分方程运算来进行滤波。IIR数字滤波器的优点在于可以利用模拟滤波器设计的结果,然后采用双线性变换法或冲激响应不变法将模拟滤波器转换成数字滤波器,而模拟滤波器的设计方便简单、有大量的图表可查。IIR数字滤波器具有以下特点:
(1)
IIR数字滤波器的系统函数可以写成封闭函数的形式。?

(2)
IIR数字滤波器采用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。?

(3)
IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,其设计工作量比较小,对计算工具的要求不高。在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。?

(4)
IIR数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准网络。
3.2
IIR数字滤波器的主要技术指标
在设计IIR数字滤波器之前,首先了解数字滤波器的技术指标,才能将其转化成满足要求的模拟滤波器技术指标,再将模拟滤波器转化成数字滤波器。数字滤波器的主要技术指标为:
(1)
特征频率参数
滤波器的频率参数主要有:
①通带截止频率:为通带与过渡带的边界点,在该点信号增益到规定的下限。②阻带截频:为阻带于过渡带的边界点,在该点信号衰减到规定的下限。③转折频率:为
信号功率衰减到(约为3)时的频率,但在多数情况下也常以作为通带或阻带截频。④当电路没有损耗时,固有频率,就是其谐振频率。
(2)
增益和衰减
滤波器在通带内的增益并不是常数。①对低通滤波器来说,通带增益一般指时的增益;对于高通而言,通带增益指时的增益;对于带通而言,通带增益则指中心频率处的增益。②对带阻滤波器而言,应给出阻带衰减,衰减定义为增益的倒数。③通带增益变化指通带内各点增益的最大变化量,如果以为单位,则指增益值的变化量。
(3)
阻尼系数与品质因数
阻尼系数是表征滤波器对角频率为信号的阻尼作用,同时是滤波器中表示能量衰减的一项重要指标,也是与传递函数的极点实部大小相关的一项系数。阻尼系数的倒数1/称为品质因数Q,是评价带通和带阻滤波器频率选择特性的一个重要指标,它可以表示为。其中为带通或带阻的带宽,为中心频率,在多数情况下中心频率等于固有频率。(4)
灵敏度
滤波器的滤波电路是由很多元件构成的,每个元件的参数值变化都会影响它的性能。当滤波器的某一个性能指标对另一个性能指标变化的灵敏度记为,定义为:
(3.1)
灵敏度是滤波电路设计中的一个重要参数,但该灵敏度与测量仪器或电路系统灵敏度概念不同,该灵敏度越小,标志着电路容错能力越大,稳定性也就越高。
(5)
群延时函数
当滤波器幅频特性满足设计要求时,为保证输出信号失真不超过允许范围,对其相频特性也相应提出了一定要求。在滤波器设计中,常用群延时函数评价信号经滤波后相位失真程度,越接近常数,信号相位失真越小。
3.3
IIR数字滤波器的设计过程
IIR数字滤波器的设计一般有两种方法:一个是借助模拟滤波器的设计方法进行。其设计步骤是,先设计模拟滤波器,再按照某种方法转换成数字滤波器。这种方法比较容易一些,因为模拟滤波器的设计方法已经非常成熟,不仅有完整的设计公式,还有完善的图表供查阅;另外一种直接在频率或者时域内进行,由于需要解联立方程,设计时需要计算机做辅助设计。其设计步骤是:先设计过渡模拟滤波器得到系统函数,然后将按某种方法转换成数字滤波器的系统函数。另外,还有一些典型的优良滤波器类型可供我们使用。
为了保证转换后的稳定且满足技术指标要求,对转换关系提出两点要求:
(1)因果稳定的模拟滤波器转换成数字滤波器,仍是因果稳定的。
(2)数字滤波器的频率相应模仿模拟滤波器的频响特性,s平面的虚轴映射为z平面的单位圆,相应的频率之间呈线性关系。
利用模拟滤波器成熟的理论设计IIR数字滤波器的过程是:
(1)确定数字低通滤波器的技术指标:通带边界频率、通带最大衰减、阻带截止频率、阻带最小衰减。
(2)将数字低通滤波器的技术指标转换成相应的模拟低通滤波器的技术指标。
(3)按照模拟低通滤波器的技术指标设计过渡模拟低通滤波器。
(4)用所选的转换方法,将模拟滤波器转换成数字低通滤波器系统函数。
IIR数字滤波器的设计流程图如下:数字滤波器
技术指标
模拟滤波器
技术指标

数字滤波器
模拟滤波器模拟滤波器
设计方法
变换变换
图3.1
IIR数字滤波器的设计步骤流程图成熟的数字滤波器设计方法主要有脉冲响应不变法和双线性变换法。3.3.1用脉冲相应不变法设计IIR数字滤波器一
设计原理
利用模拟滤波器来设计数字滤波器,也就是使数字滤波器能模仿模拟滤波器的特性,这种模仿可以从不同的角度出发。脉冲响应不变法是从滤波器的脉冲响应出发,使数字滤波器的单位脉冲响应序列h(n)模仿模拟滤波器的冲激响应ha(t),即将ha(t)进行等间隔采样,使h(n)正好等于ha(t)的采样值,满足h(n)=ha(nT),式中T是采样周期。
如果令Ha(s)是ha(t)的拉普拉斯变换,H(z)为h(n)的Z变换,利用采样序列的Z变换与模拟信号的拉普拉斯变换的关系得

(3.2)
则可看出,脉冲响应不变法将模拟滤波器的S平面变换成数字滤波器的Z平面,这个从s到z的变换z=esT是从S平面变换到Z平面的标准变换关系式。图3.2
脉冲响应不变法的映射关系由(3.2)式,数字滤波器的频率响应和模拟滤波器的频率响应间的关系为(3.3)
这就是说,数字滤波器的频率响应是模拟滤波器频率响应的周期延拓。正如采样定理所讨论的,只有当模拟滤波器的频率响应是限带的,且带限于折叠频率以内时,即
(3.4)
才能使数字滤波器的频率响应在折叠频率以内重现模拟滤波器的频率响应,而不产生混叠失真,即
(3.5)
但是,任何一个实际的模拟滤波器频率响应都不是严格限带的,变换后就会产生周期延拓分量的频谱交叠,即产生频率响应的混叠失真。这时数字滤波器的频响就不同于原模拟滤波器的频响,而带有一定的失真。当模拟滤波器的频率响应在折叠频率以上处衰减越大、越快时,变换后频率响应混叠失真就越小。这时,采用脉冲响应不变法设计的数字滤波器才能得到良好的效果
。图3.3脉冲响应不变法中的频响混叠现象
对某一模拟滤波器的单位冲激响应ha(t)进行采样,采样频率为fs,若使fs增加,即令采样时间间隔(T=1/fs)减小,则系统频率响应各周期延拓分量之间相距更远,因而可减小频率响应的混叠效应。二
脉冲响应不变法的优点
从以上讨论可以看出,脉冲响应不变法使得数字滤波器的单位脉冲响应完全模仿模拟滤波器的单位冲激响应,也就是时域逼近良好,而且模拟频率Ω和数字频率ω之间呈线性关系ω=ΩT。因而,一个线性相位的模拟滤波器(例如贝塞尔滤波器)通过脉冲响应不变法得到的仍然是一个线性相位的数字滤波器。
脉冲响应不变法的最大缺点是有频率响应的混叠效应。所以,脉冲响应不变法只适用于限带的模拟滤波器(例如,衰减特性很好的低通或带通滤波器),而且高频衰减越快,混叠效应越小。至于高通和带阻滤波器,由于它们在高频部分不衰减,因此将完全混淆在低频响应中。如果要对高通和带阻滤波器采用脉冲响应不变法,就必须先对高通和带阻滤波器加一保护滤波器,滤掉高于折叠频率以上的频率,然后再使用脉冲响应不变法转换为数字滤波器。当然这样会进一步增加设计复杂性和滤波器的阶数。3.3.2双线性变换法设计IIR数字滤波器

设计原理
脉冲响应不变法的主要缺点是产生频率响应的混叠失真。这是因为从S平面到Z平面是多值的映射关系所造成的。为了克服这一缺点,可以采用非线性频率压缩方法,将整个频率轴上的频率范围压缩到-π/T~π/T之间,再用z=esT转换到Z平面上。也就是说,第一步先将整个S平面压缩映射到S1平面的-π/T~π/T一条横带里;第二步再通过标准变换关系z=es1T将此横带变换到整个Z平面上去。这样就使S平面与Z平面建立了一一对应的单值关系,消除了多值变换性,也就消除了频谱混叠现象,映射关系如图3.4所示。
图3.4双线性变换的映射关系为了将S平面的整个虚轴jΩ压缩到S1平面jΩ1轴上的-π/T到π/T段上,可以通过以下的正切变换实现
(3.6)
式中,T仍是采样间隔。
当Ω1由-π/T经过0变化到π/T时,Ω由-∞经过0变化到+∞,也即映射了整个
jΩ轴。将式(2-6)写成
(3.7)将此关系解析延拓到整个S平面和S1平面,令jΩ=s,jΩ1=s1,则得(3.8)
再将S1平面通过以下标准变换关系映射到Z平面(3.9)
从而得到S平面和Z平面的单值映射关系为:

(3.10)(3.11)
式(3.10)与式(3.10)是S平面与Z平面之间的单值映射关系,这种变换都是两个线性函数之比,因此称为双线性变换
式(3.6)与式(3.10的双线性变换符合映射变换应满足的两点要求。
首先,把z=ejω,可得
(3.12)
即S平面的虚轴映射到Z平面的单位圆。
其次,将s=σ+jΩ代入式(2-12),得

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

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

(3.15)
上式表明,S平面上Ω与Z平面的ω成非线性的正切关系,如图3.5所示。
由图3.5看出,在零频率附近,模拟角频率Ω与数字频率ω之间的变换关系接近于线性关系;但当Ω进一步增加时,ω增长得越来越慢,最后当Ω→∞时,ω终止在折叠频率ω=π处,因而双线性变换就不会出现由于高频部分超过折叠频率而混淆到低频部分去的现象,从而消除了频率混叠现象。图3.5双线性变换法的频率变换关系但是双线性变换的这个特点是靠频率的严重非线性关系而得到的,如式(3.12)及图3.4所示。由于这种频率之间的非线性变换关系,就产生了新的问题。首先,一个线性相位的模拟滤波器经双线性变换后得到非线性相位的数字滤波器,不再保持原有的线性相位了;其次,这种非线性关系要求模拟滤波器的幅频响应必须是分段常数型的,即某一频率段的幅频响应近似等于某一常数(这正是一般典型的低通、高通、带通、带阻型滤波器的响应特性),不然变换所产生的数字滤波器幅频响应相对于原模拟滤波器的幅频响应会有畸变,如图3.6所示:
图3.6双线性变换法幅度和相位特性的非线性映射对于分段常数的滤波器,双线性变换后,仍得到幅频特性为分段常数的滤波器,但是各个分段边缘的临界频率点产生了畸变,这种频率的畸变,可以通过频率的预畸变来加以校正。也就是将临界模拟频率事先加以畸变,然后经变换后正好映射到所需要的数字频率上。
第4章
IIR数字滤波器的实现
利用MATLAB设计滤波器,可以按照设计要求非常方便地调整设计参数,极大地减轻了设计的工作量,有利于滤波器设计的最优化。MATLAB因其强大的数据处理功能被广泛应用于工程计算,其丰富的工具箱为工程计算提供了便利,利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器,设计简单方便。
4.1
MATLAB简介4.1.1
MATLAB的概况
MATLAB是矩阵实验室(Matrix
Laboratory)之意。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多.
MATLAB拥有数百个内部函数的主包和三十几种工具包(Toolbox).工具包又可以分为功能性工具包和学科工具包.功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能.学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类.
开放性使MATLAB广受用户欢迎.除内部函数外,所有MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包.
4.1.2
MATLAB的语言特点
MATLAB最突出的特点就是简洁。MATLAB用更直观的,符合人们思维习惯的代码,代替了
C和FORTRAN语言的冗长代码。MATLAB给用户带来的是最直观,最简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点:
(1)语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发是站在专家的肩膀上。
(2)运算符丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。
(3)MATLAB既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。
(4)程序限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需对矩阵预定义就可使用。
(5)程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。
(6)MATLAB的图形功能强大。在FORTRAN和C语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。MATLAB还具有较强的编辑图形界面的能力。
(7)MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。
(8)功能强大的工具箱是MATLAB的另一特色。MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能。功能性工具箱用于多种学科。而学科性工具箱是专业性比较强的,如control,toolbox,signl
proceessing
toolbox,commumnication
toolbox等。这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高、精、尖的研究。
(9)源程序的开放性。开放性也许是MATLAB最受人们欢迎的特点。除内部函数以外,所有
MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可通过对源文件的修改以及加入自己的文件构成新的工具箱。
4.1.3
MATLAB的功能
MATLAB包含的内容非常丰富,功能强大,可以概括为以下几个方面:
(1)可以在多种操作系统下运行,如DOS、Windows
95/98/2000/2000/NT、Compaq
Alpha、LinuxSun
Solaris等。
(2)有超过500种的数学、统计、科学及工程方面的函数,使用简单快捷,并且有很强的用户自定义函数的能力。
(3)有强大的图形绘制和可视化功能,可以进行视觉数据处理和分析,进行图形、图像的显示及编辑,能够绘制二维、三维图形,使用户可以制作高质量的图形,从而写出图文并茂的文章。
(4)有和用其他高级语言(如C,C++,FORTRAN,JAVA)编写的外部程序相接口的能力,也可把MATLAB程序转换成上述高级语言的子程序。
(5)有从外部文件及外部硬件设备读入数据的能力。
(6)有丰富的网络资源,从相关的Web网站可以直接获得全套的MATLAB联机帮助文件和说明书的电子文档,还可以获得各类技术支持与帮助。
(7)有丰富的工具箱〔toolbox〕。各个领域的专家学者将众多学科领域中常用的算法编写为一个个子程序,即m文件,这些m文件包含在一个个工具箱中。其工具箱可以分为两大类,即功能性工具箱和科学性工具箱。功能性工具箱主要用来扩充MATLAB的符号计算、图形可视化、建模仿真、文字处理等功能以及与硬件实时交互的功能。学科性工具箱是按学科领域来分类的,如信号处理、控制、通信、神经网络图像处理、系统辨识、鲁棒控制、模糊逻辑、小波等工具箱。
MATLAB中的信号处理工具箱内容丰富,使用简便。在数字信号处理中常用的算法,如FFT,卷积,相关,滤波器设计,参数模型等,几乎都只用一条语句即可调用。数字信号处理常用的函数有波形的产生、滤波器的分析和设计、傅里叶变换、Z变换等。
MATLAB是一个功能十分强大的系统,是集数值计算、图形管理、程序开发为一体的环境。除此之外,MATLAB还具有很强的功能扩展能力,与它的主系统一起,可以配备各种各样的工具箱,以完成一些特定的任务。用户可以根据自己的工作任务,开发自己的工具箱。在国际学术界,MATLAB已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),都可以看到MATLAB的应用。
在设计研究单和工业
部门,MATLAB被认作进行高效研究、开发的首选软件工具。如美国National
Instruments公司信号测量、分析软件LabVIEW,Cadence公司信号和通信分析设计软件SPW等,或者直接建筑在MATLAB之上,或者以MATLAB为主要支撑。

4.2
利用模拟原型进行IIR数字滤波器的设计和仿真用MATLAB进行模拟原型的数字滤波器的设计,一般步骤如下:(1)按一定规则将给出的数字滤波器的技术指标转换成模拟低通滤波器的技术指标;
(2)根据转换后的技术指标使用滤波器阶数选择函数,确定最小阶数N和固有频率Wn,根据选用的模拟低通滤波器的类型可分别用:
buttord,cheblord,cheb2ord,ellipord等函数;
(3)运用最小阶数N产生模拟滤波器原型,模拟低通滤波器的创建函数有:buttap,cheblap,cheb2ap,ellipap,besselap等;
(4)运用固有频率Wn把模拟低通滤波器原型转换成模拟低通、高通、带通、带阻滤波器,可分别用函数lp2lp,lp2hp,lp2bp,lp2bs;
(5)运用冲激响应不变法或双线性变换法把模拟滤波器转换成数字滤波器,分别用函数impinva和bilinear来实现。低通Chebyshevl型数字滤波器的设计:设计中需要限定其通带上限临界频率Wp,阻带临界滤波频率Ws,在通带内的最大衰减Rp,阻带内的最小衰减Rs。其步骤如图4.1所示。
模拟滤波器的参数
指标参数变化
数字滤波器的参数数字
滤波器
模拟滤波器离散化标
模拟滤波器的设计图4.1
数字滤波器设计步骤4.2.1巴特沃斯(Butterworth)和椭圆数字低通滤波器的设计
设计巴特沃斯数字低通滤波器和椭圆数字低通滤波器,要求通带边界频fp=2.1kHZ,通带最大衰减Rp=0.5dB;阻带边界频率fs=8kHZ,阻带最小衰减Rs=30dB,采样频率为Fs=20kHZ。A
巴特沃思低通滤波器的幅度平方函数为
(4.1)式中,N为正整数,称为滤波器的阶数。N值越大,通带和阻带的近似特性就越好。在截止频率处,幅度平方响应为=0处的1/2,相当于幅度响应的3dB衰减点。
其系统函数为
(4.2)
式中,为归一化常数,一般;为s平面左半平面的极点。
低通巴特沃斯滤波器设计步骤如下:(1)
确定阶数N。

取N=4
(2)
求极点
,,,,

归一化低通原型系统函数为由N=4直接查表得到:
极点:
归一化低通滤波器系统函数为式中,0.0000,0.0999,0.1914,0.0252
(3)
将去归一化最终得到
通过计算可以总结出过程太麻烦,而且容易出错,结果不直观。
下面用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");
运行后的波形如下:图4.2
典型滤波器在Matlab上运行波形
运行结果:
N
=4
bz
=
0.00000.09990.19140.0252
az=
1.0000

-1.43361.0984

-0.41150.0627
可以看出:通过编程,结果非常直观,题目中要求的通带边界频fp=2.1kHZ,通带最大衰减Rp=0.5dB;阻带边界频率fs=8kHZ,阻带最小衰减Rs=30dB,采样频率为Fs=20kHZ,等设计指标都达到,滤波器设计符合要求。B
椭圆低通滤波器
椭圆低通滤波器采用有限零点设计来逼近理想的低通滤波器的特性。因为零点的位置与椭圆函数的许多特性有关,所以称之为椭圆低通滤波器。它的幅度平方函数为:(4.3)
式中的是雅可比椭圆函数,是与通带衰减有关的参数,阶数N等于通带和阻带内最大点和最小点的总和。阶数和系统函数由通带的截止频率,通带内最大衰减,阻带截止频率及阻带内的最小衰减等参数确定。双线性变换法设计步骤如下:
(1)首先写出该滤波器的系统函数
(2)利用双线性变换法转换,数字滤波器的系统函数为

用双线性变换法设计椭圆数字低通滤波器的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");图4.3
双线性变换法设计的椭圆数字低通滤波器运行波形运行结果:
N=2
bz=
0.12130.16620.1213
az=
1.0000

-0.98890.4218
可以看出,滤波器的参数均符合设计要求,设计是成功的。同时了解到,椭圆数字滤波器的降斜度比较大,通带和阻带内均为等波纹,同样的性能指标,椭圆滤波器可以更低的阶数来实现。4.2.2切比雪夫(Chebyshev)数字滤波器的设计切比雪夫Ⅰ型滤波器在通带内幅度特性是等波纹的,在阻带内是单调的。切比雪夫Ⅱ滤波器在通带内是单调的,在阻带内是等波纹的。切比雪夫Ⅰ型低通滤波器的幅度平方函数为:
(4.4)
上式结果是一个正实数,式中的是一个小于1的正数,它与通带的波纹有关,越大,波纹越大,为通带的截止频率,时N阶切比雪夫多项式,定义为:
(4.5)
切比雪夫滤波器的传递函数参数确定:,,N。当N大于或等于1时,切比雪夫多项式递推公式为:
切比雪夫滤波器的阶数N等于通带内等幅波动的次数,即最大值和最小值的总数,可由下式确定

(4.6)
其中均为与衰减有关的参数,Ap为通带内的最大衰减,As为阻带内的容许衰减,它们的单位为。
因为滤波器的幅度平方函数为:(4.7)
进而化简得到:,又因为,由式(4-7)得到:故滤波器的阶数N为:(4.8)
若要求阻带截止频率上的衰减越大,或过渡带内幅度特性越陡,则所需的阶数N越高。从式中可知切比雪夫滤波器的幅度平方函数也只有极点没有零点,且只需求出左半平面的极点,所以一旦求出,,N,就能确定。
利用MATLAB设计切比雪夫滤波器的实例。
A、现在以MATLAB的函数cheblap(语法:[z,p,k]=cheblap(n,rp),其中n为阶数,rp为通带的幅度差,z,p,k分别代表零点,极点,增益)为工具设计切比雪夫Ⅰ滤波器。设计技术指标为:通带截止频率,通带的最大衰减,阻带截止频率,阻带的最小衰减。
程序如下:
a=10000;b=40000;AP=3;AS=35;

%技术指标
T1=sqrt(10^(0.1*AP)-1);
T2=sqrt(10^(0.1*AS)-1);
N=ceil(acosh(T2/T1)/acosh(b/a));
%求阶数
[Z,P,K]=cheb1ap(N,AP);
%求零、极点,增益
syms
rad;
%定义基本符号对象
hs1=K/(i*rad-P(1))/(i*rad-P(2))/(i*rad-P(3));
hs2=10*log10((abs(hs1))^2);
ezplot(hs2,[-15,15]);%绘制符号表达式的二维曲线
grid
on;
%画坐标网格线
仿真图形如图4-4所示:
图4-4
切比雪夫Ⅰ型带通滤波器响应曲线B、实际上利用MATLAB的cheby1
函数设计出切比雪夫I型低通的模拟滤波器,然后采用变换的方法得到数字的高通、低通、带通和带阻滤波器。利用[b,a]=cheby1(n,Rp,Wn,‘ftype’)方式设计出阶数为n、截止频率为Wn、带通波纹最大衰减为Rp
的数字低通滤波器。其中参数ftype
的形式决定了滤波器的形式,当它为‘high’时得到滤波器为n
阶的、截止频率为Wn
的高通滤波器。若Wn是一个含有两个元素向量[w1
w2],则cheby1
函数返回值是阶数为2n
的带通滤波器,滤波器的系统函数有理多项式的系数,通带范围是
w1MATLAB
中的cheby2
设计各种形式的滤波器的方法和利用cheby1
设计滤波器的方法相同,只是cheby2
设计出的滤波器在带阻是等波纹的,在带通是单调的;而cheby1
则恰好相反。
对于采样频率为1000
Hz
的采样信号,设计一个阶数为9
阶、截止频率为300
Hz
的低通chebyshevII
数字滤波器,其中滤波器在带阻的波纹为20
db,其设计程序如下,频率响应如图4-5
程序如下:
[b,a]=cheby2(9,20,300/500);
freqz(b,a,512,1000);
仿真图形如图4.5所示:
图4.5
切比雪夫低通II
数字滤波器对于采样频率为1000
Hz
的采样信号,设计一个阶数为9
阶、截止频率为300
Hz
的低通cheby1
数字滤波器,其中滤波器在带通的波纹为20db,其设计程序如下,频率响应如图4.6
程序如下:
[b,a]=cheby1(9,20,300/500);
freqz(b,a,512,1000);
仿真图形如图4.6所示:
图4.6切比雪夫低通I
数字滤波器
从仿真图像可以看出,所设计的滤波器技术指标都基本达到要求,滤波器的设计是成功的。
4.3
IIR数字滤波器的直接设计法除了典型设计以外,MATLAB信号处理工具箱提供了几个直接设计IIR数字滤波器的函数,直接调用就可以设计滤波器,这为设计通用滤波器提供了方便。主要有以下几种方法:
1.零极点累试法
这种方法也称为零极点累试法。在确定零极点位置时要注意:
(1)极点必须位于z平面单位圆内,保证数字滤波器因果稳定;
(2)复数零极点必须共轭成对,保证系统函数有理式的系数是实的。
2.在频域利用幅度平方误差最小法直接设计IIR数字滤波器
3.在时域直接设计IIR数字滤波器
设计Butterworth滤波器用函数butter(),可以设计低通、高通、带通和带阻的数字和模拟滤波器,其特性是通带内的幅度响应最大限度的平滑,但损失了截止频率处的下降斜度。
设计Chebyshev
I型滤波器用函数chebyl()。可以设计低通、高通、带通和带阻的数字和模拟Chebyshev
I型滤波器,其通带内为等波纹,阻带内为单调。Chebyshev
I型滤波器的下降斜度比II型大,但其代价目是通带内波纹较大。
设计Chebyshev
II型滤波器用函数cheby2()。可以设计低通、高通、带通和带阻的数字和模拟Chebyshev
II型滤波器,其通带内为单调,阻带内等波纹。Chebyshev
II型滤波器的下降斜度比I型小,但其阻带内波纹较大。
设计椭圆滤波器用函数ellip(),与chebyl,
cheby2类似,可以设计低通、高通、带通和带阻的数字和模拟滤波器。与Butterworth和chebyshev滤波器相比,ellip函数可以得到下降斜度更大的滤波器,得通带和阻带均为等波纹。一般情况下,椭圆滤波器能以最低的阶实现指定的性能指标。在使用各类滤波器函数时应当注意以下重点:
(1)、阶数和固有频率的选择:[N,Wn]=buttord(Wp,Ws,Rp,Rs)可得到符合要求性质的滤波器的最小阶数N以及数字Butterworth滤波器的固有频率Wn(即3dB
)。设计的要求是在通带内的衰减不超过Rp,在阻带内的衰减不小于Rs,通带和阻带有截止频率分别是Wp,
Ws,它们是归一化的频率,范围是[0,
1],对应π弧度。
(2)、有关滤波器设计当中的频率归一化问题:信号处理工具箱中经常使用的频率是Nyquist频率,它被定义为采样频率的一半,在滤波器的阶数选择和设计中的截止频率均使用Nyquist频率进行归一化处理。例如对于一个采样频率为1000
Hz的系统,400Hz的归一化即为400/500=0.8。归一化频率的范围在[0,
1]之间。如果要将归一化频率转换为角频率,则将归一化频率乘以π;如果要将归一化频率转换为Hz,则将归一化频率乘以采样频率的一半。
(3)、设计一个N阶的低通Butterworth滤波器使用函数[B,A]=butter(N,
Wn),返回滤波器系数矩阵[B,A]。其中固有频率Wn必须是归一化频率。它的最大值是采样频率的一半。Fs缺省时默认为2Hz。如果Wn=[Wl,W2]是一个两元素的向量,则函数将设计出一个2N阶的带通滤波器,通带为[W1,W2]。
设计Chebyshev
I型和Chebyshev
II型数字低通滤波器,要求通带边界频率fp=2.1kHZ,通带最大衰减Rp=0.5dB;阻带边界频率fs=8kHZ,阻带最小衰减Rs=30dB,采样频率为Fs=20kHZ。
Chebyshev
I型的M程序如下:Fs=20000;

%抽样频率20KHz
Flp=2100;Fls=8000;
Wp=2*Flp/Fs;
%归一化的通带截止频率
Ws=2*Fls/Fs;
%归一化的阻带截止频率
Rp=0.5;

%通带最大衰减(单位:dB)
Rs=30;
%阻带最小衰减(单位:dB)
[N,Wn]=cheb1ord(Wp,Ws,Rp,Rs);

%返回最小阶数和截止频率
[b,a]=cheby1(N,Rp,Wn);

%返回H(z)的分子分母系数
[hw,w]=freqz(b,a);
subplot(2,1,1);
plot(w/pi,20*log10(abs(hw)));grid
on;
xlabel("ω/π");ylabel("幅度(dB)")
title("切比雪夫I型幅频响应");
subplot(2,1,2);plot(w/pi,abs(hw));
grid
on;
xlabel("ω/π");ylabel("幅度(H)");运行后的波形如下:图4.7
Chebyshev
I型运行波形
运行结果:
N=2
b=
0.10070.20140.1007
a=
1.0000

-0.98720.4140
Chebyshev
II型M程序如下:
Fs=20000;
%抽样频率20KHz
Flp=2100;Fls=8000;
Wp=2*Flp/Fs;
%归一化的通带截止频率
Ws=2*Fls/Fs;
%归一化的阻带截止频率
Rp=0.5;%通带最大衰减(单位:dB)
Rs=30;
%阻带最小衰减(单位:dB)
[N,Wn]=cheb2ord(Wp,Ws,Rp,Rs);
%返回最小阶数和截止频率
[b,a]=cheby2(N,Rs,Wn);
%返回H(z)的分子分母系数
[hw,w]=freqz(b,a);
subplot(2,1,1);
plot(w/pi,20*log10(abs(hw)));grid
on;
xlabel("ω/π");ylabel("幅度(dB)")
title("切比雪夫II型幅频响应");
subplot(2,1,2);plot(w/pi,abs(hw));
grid
on;
xlabel("ω/π");ylabel("幅度(H)");
运行后的波形:
图4.8
Chebyshev
II型运行波形
运行结果:
N=2
b=
0.23570.42410.2357
a=
1.0000

-0.29960.1950从频率响应图中可以看出:巴特沃斯滤波器具有单调下降的幅频特性,通带内平滑;切比雪I型滤波器的幅频特性在通带内有波动,阻带内单调;chebyshev
II型滤波器的幅频特性在阻带内有波动,通带内单调。
第5章
IIR数字滤波器的综合设计和仿真
用MATLAB具体实现的方法有很多种,在前文中已经介绍了IIR数字滤波器的设计原理及常用模拟滤波器的相关知识,例如基于模拟低通滤波器的MATLAB实现,基于直接原型变换法的MATLAB实现。,因为MATLAB的信号处理工具箱提供了大量的滤波函数,可直接使用,所以用第二种方法(基于直接变换法的MATLAB实现)设计IIR数字滤波器最为简单。现在以切比雪夫Ⅰ型函数为例进行设计。
5.1数字低通滤波器设计实例与仿真
对于采样频率为1000
Hz
的采样信号,设计一个阶数为9
阶、截止频率为50
Hz
的低通cheby1
数字低通滤波器,其中滤波器在带通的波纹为0.5db.
则该滤波器设计程序如下,用该滤波器对信号进行滤波的结果图如图5.1.2,图5.1.3所示。
其设计程序如下:%切比雪夫Ⅰ型数字低通通滤波器直接设计
f0=1000

%采样频率
[b,a]=cheby1(9,0.5,50/500);
freqz(b,a,512,1000);
%数字带通滤波器频率响应
figure(1)%在图像1中显示滤波器幅频、相频曲线
n=0:500;t=n/f0;
f=
cos(2*pi*t*40)+sin(2*pi*t*75)+sin(2*pi*t*100);
%频率
为40的正弦原信号和频率分别为75、100的杂波正弦信号
figure(2)
%在图像2中输出图像
subplot(4,1,2);plot(f);
%数字滤波前函数输出波形
axis([0,200,-5,5]);
grid
on;
xlabel("图5.1.2
原始信号波形");
y1=filter(b,a,f);
%数字滤波函数输出
subplot(4,1,3);plot(y1)

%数字滤波函数输出波形
axis([0,200,-5,5]);
grid
on;
xlabel("图5.1.3
滤波后的信号波形");
图5.1.1运行波形由图5.1.1仿真图像可知,设计的低通滤波器无论从幅频特性和相频特性上,均满足题目中9
阶、截止频率为50
Hz,带通的波纹为0.5db的设计指标,说明滤波器的设计是成功的。
仿真滤波效果如下图所示:图5.1.2和5.1.3的结果显示,仿真模型中显示
40HZ,75HZ,100HZ
三个不同频率的正弦信相加后的波形,干扰后的混合信号是一个夹杂多频率的信号,我们所需要的有用信号(40HZ)在传输过程中不可避免的受到其他频率信号干扰,我们的目的就是得到所需要的
40HZ
频段信号,
尽可能滤除干扰信号,滤波效果的图中就是滤波后信号与原始抽样信号的的波形图,经滤波后,信号周期约为
0.025s,即频率为
40HZ,说明滤波效果很好。5.2数字带通滤波器设计实例与仿真
滤波器设计指标为:通带内的截止频率是wp1=300Hz,wp2=800Hz,阻带内的截止频率是:ws1=250Hz,ws2=300Hz;阻带内的最大衰减为rp=3dB,阻带内的最小衰减为rs=20dB;抽样频率为fs=10000Hz。则该滤波器设计程序如下,用该滤波器对信号进行滤波的结果图如图5.2。
MATLAB具体程序如下:
fp=[300,800];

%模拟通带频率
fs=[250,850];

%模拟阻带频率
f0=10000;
%采样频率

%频率指标变换
wp=2*pi*fp/f0;
%数字通带频率
ws=2*pi*fs/f0;
%数字阻带频率
rp=3;
%通带波动
rs=20;%阻带衰减
%切比雪夫Ⅰ型数字带通滤波器直接设计
[n,wn]=cheb1ord(wp/pi,ws/pi,rp,rs);
[b,a]=cheby1(n,rp,wn);
%求数字带通滤波器系数
[h,w]=freqz(b,a,128,10000);
%数字带通滤波器频率响应
mag=abs(h);pha=unwrap(angle(h));
subplot(3,1,1);plot(w,mag);
%滤波器幅频特性曲线
axis([0,1000,0,1]);
grid
on;

xlabel("图5.2.1
切比雪夫Ⅰ型带通滤波器频率响应曲线");
n=0:500;t=n/f0;
x1=2*sin(2*pi*500*t)+randn(size(t))
;%500Hz正弦信号和随机信号
subplot(3,1,2);plot(x1);%500Hz正弦波形和随机信号
axis([0,300,-5,5]);
grid
on;
xlabel("图5.2.2
带有噪音的500Hz正弦波波形");
y1=filter(b,a,x1);
%数字滤波函数输出
subplot(3,1,3);plot(y1);%数字滤波函数输出波形
axis([0,300,-5,5]);
grid
on;
xlabel("图5.2.3
数字滤波后的正弦波波形");由图5.2.1可以看出,设计的切比雪夫带通滤波器基本符合题目中设计指标:通带内的截止频率是wp1=300Hz,wp2=800Hz,阻带内的截止频率是ws1=250Hz,ws2=300Hz
阻带内的最大衰减为rp=3dB,阻带内的最小衰减为rs=20dB;抽样频率为fs=10000Hz等的要求。
由图5.2.2、5.2.3可以看出,对于一个被白噪声污染的信号x1,经过该滤波器滤波后可以滤出白噪声,保留有用信号,从而提高信号的信噪比,达到了技术指标的要求,滤波器的设计是成功的。


本次数字滤波器设计方法是基于MATLAB的数字滤波器的设计,是用学过的数字信号理论为依据,用MATLAB代码来实现的。通过IIR数字滤波器的设计过程,说明如何利用MATLAB来完成数字滤波器的设计。脉冲响应不变法中相位响应有严格的线性,不存在稳定性问题,
设计简单。双线性变换不会出现由于高频部分超过折叠频率而混淆到低频部分去的现象,但会产生频率混碟现象,使数字滤波器的频响偏移模拟滤波器的频响。由滤波器的频谱图和滤波前后的语音信号的频谱图对比可知本设计选用双线性变换法设计的IIR滤波器比较好。在同样的技术指标的要求下,IIR滤波器所要求的阶数N也比较小,实现起来比较容易。同时,除了典型设计法以外,MATLAB信号处理工具箱提供了几个直接设计IIR数字滤波器的函数,直接调用就可以设计滤波器。

通过综合运用数字信号处理的理论知识进行滤波器设计,再利用MATLAB作为编程工具进行计算机实现,从而加深了知识的理解,建立概念。对以前在课本上所学的东西有了更深入的理解和掌握。最后,无论做什么课程设计,都需要有一定的理论知识作为基础,通过这次毕业设计,我对以前所学的数字信号处理知识有了更深的理解。


本论文是在令前华老师的亲切关怀和悉心指导下完成的。她严肃的科学态度,严谨的治学精神,精益求精的工作作风,深深地感染和激励着我。从课题的选择到项目的最终完成,令老师都始终给予我细心的指导和不懈的支持。在此谨向令老师致以诚挚的谢意和崇高的敬意。
我还要感谢在一起愉快的度过毕业设计生活的同学,正是由于你们的帮助和支持,我才能克服一个一个的困难和疑惑,直至本文的顺利完成。
在论文即将完成之际,我的心情无法平静,从开始进入课题到论文的顺利完成,各位可敬的师长、同学、朋友给了我太多精神的鼓舞和学术上的帮助,再次表示衷心感谢!
参考文献
[1]
倪养华.数字信号处理与实现.上海:上海交通大学出版社,1998
[2]
飞思科技产品研发中心.MATLAB7辅助信号处理技术与应用.北京:电子工业出版社,
2005
[3]
楼顺天.基于MATLAB的系统分析与设计一信号处理.西安:西安电子科技大学出版社,1998.
[4]
张葛祥.MATLAB仿真技术与应用.北京:清华大学出版社,2003
[5]
胡广书
数字信号处理、理论、算法与实现[M]
.北京:清华大学出版社,1997
[6]
陈希林.一种LabWindows/CVI与MATLAB混合编程的实现方法[J].微计算机信息,2005
[7]
刘波.MATLAB信号处理.北京:电子工业出版社,2006
[8]
施阳.MATLAB语言工具箱.西安:西北工业大学出版社,1999
[9]
高西全.数字信号处理.西安电子科技大学出版社
第三版,2008毕业设计小结
毕业设计是我们作为学生在学习阶段的最后一个环节,是对所学基础知识和专业知识的一种综合应用,是一种综合的再学习、再提高的过程,这一过程对学生的学习能力和独立思考及工作能力也是一种培养,同时毕业设计的水平也反映了大学教育的综合水平。在完成毕业设计的时候,我尽量的把毕业设计和实际工作有机的结合起来,实践与理论相结合。这样更有利于自己能力的提高。在完成毕业设计的这段时间里,我收获颇多。
通过这次毕业设计使我了解到MATLAB功能强大,使用方便,已经广泛地应用在滤波器的设计与仿真等各个方面,并且其仍然处于不断的发展之中,功能不断增强,应用更为开放。同时,滤波器作为数字信号处理中必不可少的重要元件
仍然处于不断完善进步之中,其性能也在不断增强。课程设计过程中,不仅巩固了我的基础理论知识,而且使我各个方面的能力都有很大的提高。
在设计过程中,总是遇到这样或那样的问题。有时发现一个问题的时候,需要做大量的工作,花大量的时间才能解决。为以后的工作积累了经验,增强了信心。既让我们懂得了怎样把理论应用于实际,又让我们懂得了在实践中遇到的问题怎样用理论去解决,它更是自己综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节。毕业设计是不仅对我专业知识和专业基础知识的一次实际检验和巩固,同时也是走向工作岗位前的一次热身。
本毕业设计是在XX老师的悉心指导下完成的。从课题的立项、选题到课题的开发与研究,再到本论文的撰写到定稿的每一步工作都倾注着令老师的心血和汗水,同时得到同学们相助,并提供了大量的资料.
在此,再次对老师和同学们的帮助表示忠心的感谢。

基于MATLAB的IIR数字滤波器的设计与仿真毕业设计 本文关键词:毕业设计,仿真,设计,数字滤波器,MATLAB

基于MATLAB的IIR数字滤波器的设计与仿真毕业设计  来源:网络整理

  免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。


基于MATLAB的IIR数字滤波器的设计与仿真毕业设计》由:76范文网互联网用户整理提供;
链接地址:http://www.yuan0.cn/a/95831.html
转载请保留,谢谢!