基于Matlab的IIR滤波器的设计与仿真Word文档下载推荐.docx

上传人:b****3 文档编号:15505654 上传时间:2022-11-02 格式:DOCX 页数:16 大小:1.37MB
下载 相关 举报
基于Matlab的IIR滤波器的设计与仿真Word文档下载推荐.docx_第1页
第1页 / 共16页
基于Matlab的IIR滤波器的设计与仿真Word文档下载推荐.docx_第2页
第2页 / 共16页
基于Matlab的IIR滤波器的设计与仿真Word文档下载推荐.docx_第3页
第3页 / 共16页
基于Matlab的IIR滤波器的设计与仿真Word文档下载推荐.docx_第4页
第4页 / 共16页
基于Matlab的IIR滤波器的设计与仿真Word文档下载推荐.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

基于Matlab的IIR滤波器的设计与仿真Word文档下载推荐.docx

《基于Matlab的IIR滤波器的设计与仿真Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于Matlab的IIR滤波器的设计与仿真Word文档下载推荐.docx(16页珍藏版)》请在冰豆网上搜索。

基于Matlab的IIR滤波器的设计与仿真Word文档下载推荐.docx

通信工程0903班

指导教师:

张红英

起止日期:

2012/11/22——2012/12/14

西南科技大学信息工程学院制

方向设计任务书

学生班级:

通信工程0903班学生姓名:

周书华学号:

20096131

基于Matlab的IIR滤波器的设计与仿真

2012/11/22——2012/12/14指导教师:

张红英

设计要求:

1)了解无限冲激响应IIR滤波器的传统设计与方法;

2)了解Matlab信号处理箱。

掌握FDATool专用滤波器设计分析工具;

3)利用Matlab设计一个10阶的带通ChebyshevI型滤波器,其通带范围是

100到200Hz,采样频率为1000Hz,幅值衰减Rp=0.5,画出其幅频、相频

和冲激响应;

(自编Matlab程序和利用FDATool工具箱实现)

方向设计学生日志

时间

设计内容

2012/11/22-2012/11/29

学习数字信号处理教程,特别是关于IIR数字滤波器的部分

2012/11/30-2012/12/08

学习MATLAB应用软件,特别是其信号处理箱和Simuink

2012/12/09-2012/12/10

分析IIR数字滤波器的传统设计方法

2012/12/11

分别在MATLAB中编程设计和利用FDATool来设计IIR滤波器

2012/12/12

对设计的IIR进行仿真并分析

2012/12/13

完成专业设计报告的撰写

2012/12/14

答辩

基于Matlab的IIR滤波器的设计与仿真

一、摘要

传统的数字滤波器设计计算繁琐,尤其是设计高阶滤波器时工作量大,利用Matlab可以快速有效地实现数字滤波器的设计与仿真。

本文介绍了IIR数字滤波器的传统设计思想和步骤,同时也介绍了利用MATLAB对IIR数字滤波器进行设计的方法、设计的操作步骤以及对设计的滤波器的仿真。

二、设计目的和意义

1、通过此次专业方向设计,了解无限冲激响应IIR滤波器的传统设计方法;

2、了解Matlab信号处理箱并掌握FDATool专用滤波器设计分析工具;

3、学习如何使用Matlab,学会用Matlab解决实际问题。

三、设计原理

数字滤波器,是具有一定传输选择特性的数字信号处理装置,其输入和输出均为数字信号,实质上是一个由有限精度算法实现的线性时不变离散系统。

可以把它理解为是一个计算程序或算法,它把代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化过程中,使信号按照预定的形式变化。

数字滤波器有多种分类,从数字滤波器功能上分可分为低通、高通、带阻、带通滤波器,根据数字滤波器冲激响应的时域特征,可将数字滤波器分为两种,即无限长冲激响应滤波器(IIR)和有限长冲激响应滤波器(FIR)。

1、无限冲激响应IIR滤波器及其传统设计方法

IIR滤波器的有理系统函数为:

Hz==Y(z)X(z)

(1)

表示这一系统输入输出关系的N阶差分方程为:

yn=k=1Naky(n-k)+k=0Mbkx(n-k)

(2)

对照模拟滤波器的传递函数:

Hs=bmsm+bm-1sm-1+…+b0ansn+an-1sn-1+…+a0(3)

不难看出,IIR数字滤波器具有无限宽的冲激响应,与模拟滤波器相匹配。

模拟滤波器的设计在理论上已十分成熟,所以IIR滤波器的设计可以采取在模拟滤波器设计的基础上进一步变换的思路。

根据以上思路,首先设计一个模拟原型滤波器(截止频率为1rad/s的低通滤波器),然后在模拟域(S平面)进行频率变换,将模拟原形滤波器转换成所需类型(指定截止频率的低通、高通、带通、带阻)的模拟滤波器,再将其数字离散化,从S平面映射至Z平面,得到所需技术指标的数字滤波器。

(也可先将模拟原型离散化,得到数字原型滤波器,继而在数字域(Z平面)进行频率变换,得到所需类型的数字滤波器。

模拟滤波器到数字滤波器的转换可在时域进行也可在频域实现,时域转换的关键是要使数字滤波器与模拟滤波器时域响应的采样值相等,以保持其瞬态特性不变,常用的是冲激响应不变法。

频域变换法必须使得数字滤波器在-n≤ω≤n范围内的幅频特性与模拟滤波器在-n/T≤ω≤n/T范围内的幅频特性一致,即保证s平面与z平面上幅频特性的一一单值对应关系,常用的是脉冲响应不变法和双线性变换法。

IIR滤波器的传统设计方法思路清晰,步骤详尽,可参阅公式、手册循章而行。

但其计算非常繁琐,设计过程中要改变参数和滤波器类型时都要重新计算。

它需要反复的实验,需要设计者凭借经验设定参数,很多时候要根据设计要求和滤波效果不断调整,以达到设计的最优化。

在这种情况下,单纯的靠公式计算和编制简单的程序很难在短时间内完成。

2、IIR滤波器的Matlab设计

图1Matlab2012a主界面

Matlab是MATHWORK公司推出的一套面向科学和数值计算的可视化语言,它集数值分析、矩阵运算、信号处理和图形显示于一体,是一个高度集成系统具有友好的用户界面和良好的帮助功能。

Matlab自带的信号处理工具箱(SignalProcessingToolbox)具有强大的信号处理和分析功能,利用Matlab软件优越的数字分析及仿真功能,对理解数字滤波器及数字滤波具有一定参考价值。

Matlab的信号处理工具箱中,提供了一整套模拟、数字滤波器的设计命令和运算函数,方便准确,简单易行,使得设计人员除了可按上述传统设计步骤快速地进行较复杂高阶选频滤波器的计算、分析外,还可通过原型变换法直接进行各种典型数字滤波器设计,即应用Matlab设计工具从模拟原型直接变换成满足原定频域指标要求的数字滤波器。

Matlab有两种途径来设计IIR数字滤波器,分别为FDATool界面设计和直接程序设计。

1)FDATool界面设计

FDATool是Matlab信号处理工具箱里专用的滤波器设计分析工具,其界面为滤波器的设计提供了一个交互式的设计环境,用户进行参数设置后,可以设计几乎所有的基本常规滤波器,包括IIR和FIR的各种设计方法,操作简单,方便灵活。

FDATool界面总共分两大部分,一部分是DesignFilter,在界面的下半部,用来设置滤波器的设计参数;

另一部分则是特性区,在界面的上半部分,用来显示滤波器的各种特性。

图2FDATool界面

DesignFilter部分主要分为:

A、ResponseType(滤波器类型)选项,包括Lowpass(低通)、Highpass(高通)、Bandpass(带通)、Bandstop(带阻)和特殊的FIR滤波器。

B、DesignMethod(设计方法)选项,包括IIR滤波器的Butterwotth(巴特沃思)法、Chebyshev 

TypeI(切比雪夫I型)法、ChebyshevTypeII(切比雪夫II型)法、Elliptic(椭圆滤波器)法和FIR滤波器的Equiripple法、Least-Squares(最小乘方)法、Window(窗函数)法;

C、FilterOrder(滤波器阶数)选项,定义滤波器的阶数,包括SpecifyOrder(指定阶数)和MinimumOrder(最小阶数)。

在SpecifyOrder中填入所要设计的滤波器的阶数(N阶滤波器,SpecifyOrder=N-1)。

如果选择MinimumOrder,则MATLAB根据所选择的滤波器类型自动使用最小阶数;

D、FrequencySpecifications选项,可以详细定义频带的各参数,包括采样频率和频带的截止频率。

它的具体选项由FilterType选项和DesignMethod选项决定。

例如Bandpass(带通)滤波器需要定义Fstop1(下阻带截止频率)、Fpass1(通带下限截止频率)、Fpass2(通带上限截止频率)、Fstop2(上阻带截止频率),而Lowpass(低通)滤波器只需要定义Fstop1、Fpass1。

采用窗函数设计滤波器时,由于过渡带是由窗函数的类型和阶数所决定,所以只需定义通带截止频率,而不必定义阻带参数。

E、MagnitudeSpecifications选项,可以定义幅值衰减的情况。

例如设计带通滤波器时,可以定义Wstop1(频率Fstop1处的幅值衰减)、Wpass(通带范围内的幅值衰减)、Wstop2(频率Fstop2处的幅值衰减)。

当采用窗函数设计时,通带截止频率处的幅值衰减固定为6db,所以不必定义。

2)直接程序设计

在Matlab中,对各种滤波器的设计都有相应的函数,可以用来做滤波器程序设计。

比如,估计IIR数字滤波器的阶数N,相应的M文件为:

buttord用于巴特沃斯滤波器,cheb1ord用于切比雪夫1型滤波器,cheb2ord用于切比雪夫2型滤波器,ellipord用于椭圆滤波器。

对于基于双线性变换法的IIR滤波器设计,对应于四种逼近技术,相应的M文件为:

butter用于巴特沃斯滤波器的设计,cheby1用于切比雪夫1型滤波器的设计,cheby2用于切比雪夫2型滤波器的设计,ellip用于椭圆滤波器的设计。

同时,利用zp2tf可以由滤波器的零极点向量和标量增益因子得到传输函数分子和分母的系数向量。

利用函数zp2sos可以得到传输函数分子和分母系数向量的二次项因子。

计算出传输函数的系数之后,可以利用M文件freqz来计算频率响应,可以利用impz来计算冲激响应。

由于本设计,已经明确了要设计一个10阶的带通ChebyshevI型滤波器,注重介绍一下cheby1函数。

利用[b,a]=cheby1(n,Rp,Wn,‘ftype’)可以设计出阶数为n、截止频率为Wn、带通波纹最大衰减为Rp的数字低通滤波器。

其中参数ftype的形式决定了滤波器的形式,当它为high时得到滤波器为n阶的、截止频率为Wn的高通滤波器。

若Wn是一个含有两个元素向量[w1w2],则cheby1函数返回值是阶数为2n的带通滤波器的系统函数有理多项式的系数,通带范围是w1<

W<

w2。

3、Simulink仿真

Simulink是Matlab最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。

在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。

Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。

同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。

图3SimulinkLibraryBrows

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 信息与通信

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1