基于TMS320VC5402的IIR数字滤波器的设计Word文件下载.docx
- 文档编号:22406415
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:20
- 大小:257.82KB
基于TMS320VC5402的IIR数字滤波器的设计Word文件下载.docx
《基于TMS320VC5402的IIR数字滤波器的设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于TMS320VC5402的IIR数字滤波器的设计Word文件下载.docx(20页珍藏版)》请在冰豆网上搜索。
Keywords:
IIRdigitalfilter;
Analogfilters;
Impulseresponse
目录
摘要……………………………………………………………………………………………Ⅰ
Abstract…………………………………………………………………………………………Ⅱ
目录………………………………………………………………………………………………Ⅲ
1、任务提出与方案论证………………………………………………………………………5
1.1、滤波器技术的发展状况………………………………………………………………5
1.2、滤波器及其MATLAB实现……………………………………………………………4
1.3、设计方法………………………………………………………………………………6
2、总体设计………………………………………………………………………………………8
2.1、IIR数字滤波器的基本概念……………………………………………………………8
2.2、系统的描述………………………………………………………………………………9
2.3、模拟滤波器的特性………………………………………………………………………10
3、详细设计………………………………………………………………………………………12
3.1、IIR数字滤波器设计思路与步骤……………………………………………………………12
3.2、IIR数字滤波器设计方法………………………………………………………………12
3.2.1传统设计方法……………………………………………………………………12
3.2.2计算机辅助设计方法…………………………………………………………13
3.2.3MATLAB的程序实现及结果……………………………………………………13
3.3、巴特沃斯低通滤波器的设计…………………………………………………………16
4、总结…………………………………………………………………………………………20
参考文献…………………………………………………………………………………………21
1任务提出与方案论证
1.1滤波器技术的发展状况
数字信号处理主要是研究用数字或符号的序列来表示信号波形,并用数字的方式去处理这些序列,把它们改变成在某种意义上更为有希望的形式,以便估计信号的特征参量,或削弱信号中的多余分量和增强信号中的有用分量。
具体来说,凡是用数字方式对信号进行滤波、变换、调制、解调、均衡、增强、压缩、固定、识别、产生等加工处理,都可纳入数字信号处理领域。
数字信号处理理论与技术的发展,主要是由于电子计算机与大规模集成电路的大量生产和广泛应用,替代了原来的模拟信号处理中的线性滤波与频谱分析所应用的模拟计算机和分立元件L、C、R线性网络,高度发挥了计算技术与数字技术相结合的特色和优越性。
特别是微处理器和微型计算机技术日新月异的发展,经更有利于电子仪器与电子技术应用系统朝着数字化、小型化、自动化以及多功能等方向发展,促使它们成为富有智能型的电子系统。
现在,包括数字滤波在内的数字信号处理技术正以惊人的速度向纵深和高级的方向发展;
据统计这种趋势还要持续一个较长的时期,未来的发展可能会比过去的进程更为激动人心,必将引起某些领域的飞跃性发展。
1.2滤波器及其MATLAB实现
数字滤波器是数字信号处理中最重要的组成部分之一。
在许多科学技术领域中,广泛使用滤波器对信号进行了处理。
滤波器是一种选频装置,它对某一个或几个频率范围(频带)内的电信号给以很小的衰减:
使这部分信号能够顺利通过,对其它频带内的电信号则给以很大的衰减,从而尽可能地阻止这部分信号的通过。
通过滤波器时不经受衰减或经受很小的衰减的频带称为通带,经受的衰减超过某一规定值的频带称为阻带,位于通带和阻带之间的频带称为过渡带。
于是,根据通带的不同,滤波器可分为低通滤波器、高通滤波器、带通滤波器、带阻滤波器等。
此外,根据它所处理的信号型类,滤波器又可分为模拟滤波器和数字滤波器,模拟滤波器用来处理连续信号,而数字滤波器用来处理离散信号,后者是在前者基础上发展起来的。
数字滤波器与模拟滤波器比较,其主要优点精度和稳定性高,系统函数容易改变,因而灵活性高,不存在阻抗匹配问题,便于大规模集成,可以实现多维滤波。
因此,目前在诸如通信、雷达、遥感、声纳、卫星通信、宇宙航行、测量、语言和生物医学等科学领域的信号处理中,已经运用了数字滤波技术,而且随着大规模集成电路技术和数字计算技术的发展,它的应用会越来越广泛。
数字滤波器一般可用两种方法实现:
一种是根据描述数字滤波器的数字模型或信号流图,用数字硬件装配成一台专门的设备,构成专用的信号处理机,这就是硬件实现方式;
另一种方法就是直接利用通用计算机,将所需要的运算编成程序来让计算机来执行,这就是软件实现方式。
在硬件实现方式中,是一数字组件如延迟器、加法器和乘法器作为基本部件构成专用数字信号处理系统。
不像模拟滤波器需要用电感和电容元件,因此数字信号处理机很容易用数字集成电路来制成,而且它的转移函数可变,各回路之间不存在阻抗匹配问题,因此可以很容易做成最佳冲激响应和恒定延迟的线性相移网络。
在软件实现方式中,它是借助于通用计算机机器语言、汇编语言或高级语言程序来做数字滤波器的运算过程。
1.3设计方法
1、零极点位置累试法。
当滤波器性能未达到要求时,通过多次改变零极点的位置来达到要求。
此方法只适用于简单滤波器。
2、用模拟滤波器理论来设计数字滤波器。
在IIR数字滤波器的设计中较多的采用这种方法。
本节将详细介绍这种方法。
3、巴特沃斯低通滤波器的设计
4、用计算机辅助设计,优化技术设计。
2总体设计
2.1IIR数字滤波器的基本概念
这里所讲的数字滤波器都是一个离散的LTI系统,离散LTI系统模型如图
2-1:
图2-1离散LTI系统模型
注:
X(n)、y(n)分别是系统的输入输出序列,H(E)是系统本身的特性(转移算子)。
系统对于输入的离散序列x(n)总有对应的输出y(n)。
x(n)是离散的信号,每个x(i)可能有不同的幅值,有了前后不同幅值的变化,就可以引出离散信号的频率这一性质。
数字滤波器就是对不同频率的数字信号从频域进行信号分离的时序电路或器件或一段程序。
数字滤波器按功能分为低通、高通、带通、带阻、全通滤波器。
(2-1)
(2-2)
由序列傅氏变换公式可知,离散信号的傅氏变化是
的函数,周期为2
。
只需研究-
,不需要在整个
轴上分析其信号。
所以,数字滤波器的通带分布如图2-2:
图2-2数字滤波通带分布
2.2系统描述
模拟系统通常用微分方程描述,离散系统则用差分方程来描述。
差分方程可分为非递归和递归型两大类:
1、非递归型:
输出对输入无反馈,输出值仅仅取决于输入值。
(2-3)
若系统是线性、非移变、因果的,则有
(
常数)(2-4)
若又有i>
N时,
=0,则
常数)(2-5)
2、递归型:
输出对输入有反馈,输出取决于输入和反馈
+
(2-6)
(
、
常数)(2-7)
系统的传递函数
对IIR数字滤波器的差分方程的一般形式
为常数)(2-8)
两边同时进行双边z变换得:
(2-9)
得IIR数字滤波器的传递函数:
(2-10)
2.3模拟滤波器的特性
下面先叙述模拟滤波器的特性,再举例由已知的模拟滤波器传递函数来变换为相应的数字滤波器。
一般情况下的理想低通滤波器的幅频特性如下图所示。
图2-3低通滤波器幅频特性
根据傅氏变换的对偶性可知频带有限信号在时域中是无时限信号。
所以如图所示理想的低通滤波器在实际中是做不出来的。
因为实际上真正的时域无时限信号是不存在的,也没有单位冲击响应是无时限响应的非因果系统。
图2-4频域转换为时域
由对偶性,得:
(2-11)
所以,实际的滤波器都是通过在频域人为的构造一些函数,使之幅频特性尽可能的接近理想的滤波特性。
3详细设计
3.1IIR数字滤波器设计思路与步骤
IIR数字滤波器可用一个n阶差分方程
y(n)=Σbrx(n-r)+Σaky(n-k),
或用它的Z域系统函数:
对照模拟滤波器的传递函数:
不难看出,数字滤波器与模拟滤波器的设计思路相仿,其设计实质也是寻找一组系数{b,a},去逼近所要求的频率响应,使其在性能上满足预定的技术要求;
不同的是模拟滤波器的设计是在S平面上用数学逼近法去寻找近似的所需特性H(S),而数字滤波器则是在Z平面寻找合适的H(z)。
IIR数字滤波器的单位响应是无限长的,而模拟滤波器一般都具有无限长的单位脉冲响应,因此与模拟滤波器相匹配。
由于模拟滤波器的设计在理论上已十分成熟,因此数字滤波器设计的关键是将H(S)→H(Z),即,利用复值映射将模拟滤波器离散化。
已经证明,冲击响应不变法和双线性变换法能较好地担当此任,则在此基础上,数字滤波器的设计就可首先归结为模拟滤波器的设计了。
3.2.IIR数字滤波器设计方法
IIR数字滤波器的设计方法有多种,可归纳为下述两种。
3.2.1传统设计方法
根据前述设计思路,首先设计一个模拟原型滤波器(截止频率为1rad/s的低通滤波器),然后在模拟域(S平面)进行频率变换,将模拟原形滤波器转换成所需类型(指定截止频率的低通、高通、带通、带阻)的模拟滤波器,再将其数字离散化,从S平面映射至Z平面,得到所需技术指标的数字滤波器。
上述过程中,也可先将模拟原型离散化,得到数字原型滤波器,继而在数字域(Z平面)进行频率变换,得到所需类型的数字滤波器。
模拟滤波器到数字滤波器的转换可在时域进行也可在频域实现,时域转换的关键是要使数字滤波器与模拟滤波器时域响应的采样值相等,以保持其瞬态特性不变,常用的是冲击响应不变法。
频域变换法必须使得数字滤波器在-π≤ω≤π范围内的幅频特性与模拟滤波器在-π/T≤Ω≤π/T范围内的幅频特性一致,即保证S平面与z平面上幅频特性的一一单值对应关系,常用的是双线性变换法。
3.2.2计算机辅助设计方法
传统设计方法思路清晰,步骤详尽,可参阅公式、手册循章而行。
但由于计算繁琐,手工计算大多只能用来进行简单低阶选频滤波器(如LP,HP,BP及BS等)的设计。
计算机辅助设计方法是集电路理论、网络图论、数值分析、矩阵运算、元件建模、优化技术、高级计算机语言等多交叉学科于一身的新领域,它把计算机的快速、高精度、大存储容量、严格的逻辑判断和优良的数据处理能力与人的思维创造能力充分结合起来,极大地简化了数字滤波器的设计过程。
在优秀科技应用软件MATLAB的信号处理工具箱中,提供了一整套模拟、数字滤波器的设计命令和运算函数,方便准确,简单易行,使得设计人员除了可按上述传统设计步骤快速地进行较复杂高阶选频滤波器的计算、分析外,还可通过原型变换法直接进行各种典型数字滤波器设计,即应用MATLAB设计工具从模拟原型直接变换成满足原定频域指标要求的数字滤波器。
此外,MATLAB软件还提供了强大的数字滤波器优化设计功能。
即预先确定一种最佳设计准则,然后直接求得在该准则下滤波器系统的传递函数{b,a}。
这种最优设计方法可方便地用于任意幅频特性要求的多带通复杂滤波器系统的设计。
3.2.3MATLAB的程序实现及结果
下面以一带通数字滤波器的设计为例,说明基于MATLAB的三种实现方法。
1基于模拟低通原型的MATLAB实现
%通过模拟低通原型滤波器进行数字带通设计程序:
fp=480%模拟低通通带上限频率
fs=520%模拟低通阻带下限频率
wp=2*pi*fp%模拟低通通带上限角频率
ws=2*pi*fs%模拟低通阻带下限角频率
rp=3%通带波动
rs=20%阻带衰减
%巴特沃斯模拟低通原型滤波器设计
[n,wn]=buttord(wp,ws,rp,rs,'
s'
)
[z,p,k]=buttap(n)%模拟低通原型零、极点系数
[b1,a1]=zp2tf(z,p,k)%零、极点系数转换为传递函数
%巴特沃斯模拟低通原型滤波器频率响应
[h1,w1]=freqs(b1,a1)
mag1=abs(h1)
%模拟低通原型滤波器幅频特性曲线
subplot(221);
semilogx(w1,mag1)
fw=40%模拟带通滤波器带宽频率
bw=2*pi*fw%模拟带通滤波器带宽角频率
%由模拟低通原型变换为模拟带通滤波器
[b2,a2]=lp2bp(b1,a1,wn,bw)%模拟带通滤波函数系数
%巴特沃斯模拟带通滤波器频率响应
[h2,w2]=freqs(b2,a2)
mag2=abs(h2)
%模拟带通滤波器幅频特性曲线(db)
subplot(222);
plot(20*log10(mag2))%冲击响应不变法进行离散化设计
fo=2000%采样频率[bz,az]=impinvar(b2,a2,2000)%数字带通滤波函数系数
%巴特沃斯型数字带通滤波器频率响应
[hz,w]=freqz(bz,az)
magz=abs(hz)
phz=unwrap(angle(hz))
subplot(223);
plot(magz)%数字带通滤波器幅频特性曲线
subplot(224);
plot(phz)%数字带通滤波器相频特性曲线
3.2.4CCS仿真截图
3.3巴特沃斯低通滤波器的设计
巴特沃斯滤波器,又被称为“最平”的幅频响应滤波器。
这是因为,该滤波器在通带内平坦的幅度特性,而且随着频率升高呈现出单调减小的特点。
N阶低通巴特沃斯滤波器的特性函数为
(4-6)
其中,
为通带宽度,即截止频率。
当阶次N增大时,滤波器的特性曲线变得更加陡峭,其特性就越接近于理想的矩形幅频特性
巴特沃斯滤波器属于全极点设计,它的极点由下式决定。
(4-7)
式中,
所以,在s平面上有2N个极点等间隔地分布在半径为
的圆周上,并且极点都是成复共轭对出现,极点位置与虚轴对称,但不在虚轴上。
下面结合一个具体的实例,来说明巴特沃斯滤波器的设计过程。
设模拟低通巴特沃斯通滤波器,通带纹波为
通带上限角频率
,阻带下限角频率
,阻带最小衰减
,根据该低通模拟滤波器,利用冲激响应不变法设计相应的数字低通滤波器,并画出设计后的数字低滤波器的特性曲线。
MATLAB程序:
M文件:
function[db,mag,pha,grd,w]=freqz_m(b,a)
[H,w]=freqz(b,a,500);
mag=abs(H);
db=20*log10(mag/max(mag));
pha=angle(H);
grd=grpdelay(b,a,w);
程序:
wp=0。
2*pi;
ws=0。
3*pi;
Rp=1;
As=15;
T=1;
Rip=10^(-Rp/20);
Atn=10^(-As/20);
OmgP=wp*T;
OmgS=ws*T;
[N,OmgC]=buttord(OmgP,OmgS,Rp,As,'
);
[cs,ds]=butter(N,OmgC,'
[b,a]=impinvar(cs,ds,T);
[db,mag,pha,grd,w]=freqz_m(b,a);
subplot(2,2,1);
plot(w/pi,mag);
title('
幅频特性'
xlabel('
w(/pi)'
ylabel('
|H(jw)|'
axis([0,1,0,1。
1]);
set(gca,'
XTickMode'
'
manual'
XTick'
[00。
20。
30。
51]);
YTickMode'
[0AtnRip1]);
grid
subplot(2,2,2);
plot(w/pi,db);
幅频特性(dB)'
xlabel('
dB'
axis([0,1,-40,5]);
[-40-As-Rp0]);
subplot(2,2,3);
plot(w/pi,pha/pi);
相频特性'
axis([0,1,-1,1]);
set(gca,'
grid
subplot(2,2,4);
plot(w/pi,grd);
title('
群延迟'
ylabel('
Sample'
axis([0,1,0,12]);
运行结果:
4总结
通过本次的课程设计,我学会了许多知识,首先就是学会了visio的使用,其实就是学会了信号系统中原来没有真正理解的东西。
现在通过CCS仿真以后基本上把它掌握住了,并且还懂了无论做任何事情,要做就要把它认真的做好,不能三心二意,不把它当回事,这一点还得感谢我们的指导老师,是他对我们说了这些话,才使我懂得了这个道理。
因此,通过这次设计,不仅学会了知识,更重要的是学会了如何学习的方法。
今后无论做什么,我都要遵守这个守则:
“要做就认认真真的做”。
!
参考文献
[1]康华光,陈大钦.电子技术基础—模拟部分(第五版)[M].北京:
高等教育出版社,2005
[2]皮文兵.一种宽输入范围的Gillbert模拟乘法器设计[J].电子设计应用.2007.13
(1):
88-90
[3]焦春生.新型绿色能效D类音频放大器设计应用[EB/OL].
[4]张筑生.微分半动力系统的不变集[D].北京:
北京大学数学系数学研究所,1983
[5]胡广书.数字信号处理——理论、算法与实现[M].北京:
清华大学出版社,1997.
[6]张雄伟,曹铁勇.DSP芯片的原理与开发应用[M].北京:
电子工业出版社,2000.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 TMS320VC5402 IIR 数字滤波器 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)