资源描述
第二级,第三级,第四级,第五级,技术凝聚实力,专业创新出版,单击此处编辑母版标题样式,第,25,章 信号处理工具箱,信号处理工具箱是一个建立在,MATLAB,数值计算环境上的工具集合,它在波形生成、滤波器的设计、参数模型以及频谱分析中有着广泛的运用。,MATLAB,包含了大量的进行信号处理的工具箱函数,本章通过对这些函数介绍,使大家能够在理解的基础上学以致用。,25.1,信号的表示,连续信号是指时间连续、幅度连续的信号,也称之为模拟信号。数字信号则是指在时间和幅度上都离散的信号。在计算机中只能处理数字信号,模拟信号必须经过采样和量化后,即变为数字信号,才能够被计算机处理。对模拟信号进行时间域的采样就得到了时间域离散的采样信号。若采样速率满足内奎斯特采样定理,即采样速率大于等于模拟信号的最高频率的,2,倍,那么模拟信号可以由采样序列构成的时间离散信号无失真的表达。,在信号处理中大多数信号是需要事先输入时间向量的,对于只有一个输入和一个输出的信号,,MATLAB,将通过向量的形式来表示它。假设输入为时间,t,,输出信号为,y,。取,其中表示时间信号的起始时间,表示时间信号的终止时间,,p,为时间间隔,此时时间,t,构成一个维的向量,那么输出信号,y=f(t),可以由时间向量,t,和,t,向量在,f(t),对应时间点上的采样值表示。,25.2,信号的生成,25.2.1,正弦波和余弦波,在,MATLAB,中利用函数,sin,和,cos,可以生成所需要的正弦波或余弦波。下面结合例子来说明。,生成一个信号持续时长,10s,,频率为,250Hz,,幅度为,0.75,,初始相位为,40,的余弦波,并画出其波形图。,25.2.2,周期方波和锯齿波,利用,MATLAB,信号处理工具箱中的,square,命令生成方波,用,sawtooth,命令生成三角波,也称为锯齿波。它们的调用格式如下:,square(T),:产生一周期为,2,,幅值为,1,的方波,采样时刻由向量,T,指定;,square(T,,,DUTY),:产生一个给定占空比,周期为,2,,幅值为,1,的方波方波,占空比是,1100,之间的数,如果占空比是,30,,表示一个方波的周期内正电平占,30%,;,sawtooth(T),:产生周期为,2,,幅值为,1,的三角波,采样时刻由向量,T,指定;,sawtooth(T,,,WIDTH),:产生三角波,,WIDTH,指定最大值出现的地方,其取值在,0,到,1,之间。当,T,由,0,增大到,WIDTH*2,时,函数值由,-1,增大到,1,,当,T,由,WIDTH*2,增大到,2,时,函数值由,1,减小到,-1,。,25.2.3,周期,sinc,函数,周期,sinc,函数在,MATLAB,中用,diric,命令实现,其又称,Dirichlet,函数。,Dirichlet,函数的定义是:,d(x)=sin(N*x/2)./(N*sin(x/2),。,diric(),函数的调用格式为:,Y=diric(X,,,N),,其返回的是一个大小与,X,相同的矩阵,其元素为,Dirichlet,函数值。,N,必须为正整数,该函数将,0,到,2,等间隔的分成,N,等份。,25.2.4,高斯调整正弦脉冲,Gauspuls,是,MATLAB,信号处理工具箱提供的信号发生函数,其调用格式如下:,YI=gauspuls(T,,,FC,,,BW),:函数返回最大幅值为,1,的高斯函数调幅的正弦波的采样,其中心频率为,FC,,相对带宽为,BW,,时间由数组,T,给定。,BW,的值必须大于,0,。默认情况下,,FC=1000Hz,,,BW=0.5,。,YI=gauspuls(T,,,FC,,,BW,,,BWR),:,BWR,指定可选的频带边缘处的参考水平,以相对于正常信号峰值下降了,-BWR,(单位为,dB,)为边界的频带,其相对带宽为,100*BW%,。默认情况下,,BWR,的值为,-6dB,。其他参数设置同上。,BWR,的值为负值。,TC=gauspuls(,cutoff,,,FC,,,BW,,,BWR,,,TPE),:返回包络相对包络峰值下降,TPE,(单位为,dB,)时的时间,TC,。默认情况下,,TPE,的值是,-60dB,。其他参数设置同上。,TPE,的值必须是负值。,25.2.5,扫频信号,利用,MATLAB,的信号处理工具箱中的,chirp,函数可以获得在设定频率范围内的按照设定方式进行的扫频信号。,chirp,函数调用格式如下。,Y=chirp(T,,,R0,,,T1,,,F1),:产生一个频率随时间线性变化信号的采样,其时间轴的设置由数组,T,定义。时刻,0,的瞬时频率为,F0,;时刻,T1,的瞬时频率为,F1,。默认情况下,,F0=0Hz,,,T1=1,,,F1=100Hz,。,Y=chirp(T,,,F0,,,T1,,,F1,,,method,),:,method,指定改变扫频的方法。可用的方法有,linear,(,线性调频,),、,quadratic,(二次调频)、,logarithmic,(对数调频)。默认时为,linear,,其他参数意义同上。,Y=chirp(T,,,F0,,,T1,,,F1,,,method,,,PHI),:,PHI,指定信号的初始相位,默认时,PHI,的值为,0,,其他参数意义同上。,25.2.6,单位冲激信号,单位冲激信号是信号系统的基本信号,其表示符号为,它的数学定义是:由定义可以看出,单位冲激信号除了原点之外,其他各处都为零,并且信号的总面积为,1,,这在,MATLAB,中是无法直接实现的。因此,实际中就用一个矩形脉冲来代替单位冲激信号,当,d,t,趋近于零时,这个窄矩形脉冲就可以近似表示单位冲激信号了。,单位冲激信号在,MATLAB,中的实现代码如下:,dt=0.01;,t=-3:dt:3;%,画出,-3 3,上的波形图,n=length(t);%,计算采样点数,n,x=zeros(1,n);%,生成一维数组,其,n,个元素都为,0,x(1,3/dt+1)=1/dt;%,设置原点处的采样值,stairs(t,x);%,画出信号图如图,25.9,所示,函数使用参见帮助,axis(-3,3,0,150)%,设置显示窗口纵横坐标,25.2.7,单位序列,单位序列是一个典型的离散信号,它的数学表达式为:,由定义可知,只有当,k=0,时,函数值才为,1,,其余全为零,在,MATLAB,中实现较为简单,下面将给出平移信号的,MATLAB,实现代码,该信号是指在时函数值为,1,,其余时刻函数值为,0,。,25.2.8,均匀分布的随机序列,MATLAB,的信号处理工具箱中的,rand,函数可以生成在,0 1,区间上均匀分布的随机数序列,,rand,函数的一般调用格式为:,Y=rand(M,N),,其生成,M,行,N,列的随机数矩阵。,25.2.9,高斯分布随机序列,在,MATLAB,中,除了均匀分布的随机序列外,常用的还有标准正态分布的随机序列,该序列可以有,randn,函数生成,,randn,函数的调用格式为:,Y=randn(M,N),,将生成一个,M,行,N,列的均值方差为,1,的标准正态分布的随机数序列。,25.3,随机信号处理和谱估计,在现实世界中,常见的信号往往不是确定的信号,而是一些具有统计特性的随机信号,这些信号无法用解析的表达式来描述,只能通过统计的方法来处理。这一节将简单介绍随机信号的处理及随机信号的谱估计。,25.3.1,随机信号互相关函数估计,xcorr,函数是随机信号互相关估计函数,其调用格式如下:,c=xcorr(x,y,maxlags,option),:上式中,,x,,,y,为两个独立的随机信号序列,长度都为,N,的向量(,N1,),如果,x,,,y,长度不一致,则短的一个用,0,补齐,使得两个信号长度一样;,c,为,x,,,y,的互相关函数估计序列;,maxlags,为,x,与,y,之间的最大延迟,函数返回值,c,的长度为,2maxlags+1,。默认状态下,函数返回值,c,的长度为,2N-1,。,option,指定互相关的归一化选项,它可以是:,biased,:计算互相关函数的有偏互相关估计;,unbiased,:计算互相关函数的无偏互相关估计;,coeff,:系列归一化,使零延迟的自相关为,1,;,none,:默认状态,函数执行非归一化计算相关。,25.3.2,互协方差函数估计,xcov,函数是互协方差估计函数,其调用格式如下:,c,lags=xcov(x,y,maxlags,option),:上式中,,x,,,y,为两个独立的随机信号序列,长度都为,N,的向量(,N1,);,v,为,x,,,y,的互协方差序列;,maxlags,为,x,与,y,之间的最大延迟,函数返回值,c,的长度为,2maxlags+1,。默认状态下,函数返回值,c,的长度为,2N-1,。,option,指定互协方差的归一化选项,它可以是:,biased,:计算互协方差函数的有偏互相关估计;,unbiased,:计算互协方差函数的无偏互相关估计;,coeff,:系列归一化,使零延迟的自相关为,1,;,none,:默认状态,函数执行非归一化计算相关。,25.3.3,谱分析函数,psd,对于随机信号来说,虽然它没有确定的解析表达式,但其相关函数却是确定的,如果信号是平稳的,那么对相关函数的傅立叶变换就是它的功率谱密度函数,即功率谱,它反映了单位频带内随机信号功率的大小。在,MATLAB,信号处理工具箱提供了许多谱分析函数,最常用的是函数,psd,和,pwelch,求功率谱,至于其他的函数请读者参考帮助文档。,25.3.4,谱分析函数,pwelch,常用的谱分析函数除了,psd,函数外,还有,pwelch,函数。,pwelch,函数的调用格式如下。,Pxx,w=pwelch(x),:该函数用,Welch,方法估计一个输入信号向量,x,的功率谱密度,Pxx,。其向量,x,被分割成,8,段,每一段有,50%,的重叠,函数将忽略没有包含在,8,段中的剩余的,x,中的数据,并且这分割后的每一段都用汉明窗进行加窗,窗函数的长度和每一段的长度一样。当,x,为实数时,产生单边的,PSD,,当,x,是复数时,产生双边的,PSD,。一般来说,,FFT,的长度和输入,x,的值决定了,Pxx,的长度和归一化频率,w,的范围。系统默认,FFT,的长度,N,为,256,和,2,的整数次幂中大于分段长度的最近的数。具体规定为,当输入,x,是实数时,,Pxx,的长度为(,N/2,),+1,,对应的归一化频率的范围为,0,;当输入,x,是复数时,,Pxx,的长度为,N,,对应的归一化频率范围为,0,2,)。,Pxx,w=pwelch(x,window),:如果设定,window,是一个正整数,那么这个数代表,Hamming,窗的长度;如果设定,window,为一个向量,那么这个向量代表窗函数的权系数。在这种调用格式中,输入向量,x,被分割成每段重叠,50%,的整数段,每段的长度和窗函数的长度相同,没有包含在任何一段中的剩余的,x,中的数据将被忽略。如果指定,window,为一个空向量,则信号数据被分割成,8,段,并在每一段上加,Hamming,窗。,25.3.4,谱分析函数,pwelch,Pxx,w=pwelch(x,window,noverlap),:该调用格式指定,x,分割后每一段的长度为,window,,,noverlap,指定每段重叠的信号点数,,noverlap,必须小于被确定的窗口长度,在默认情况下,,x,被分割后的每段有,50%,重叠。,Pxx,w=pwelch(x,window,noverlap,nfft),:整数,nfft,指定,FFT,的长度,如果,nfft,指定为一个空向量,则,nfft,取前面调用格式中的,N,。,nfft,和,x,决定了,Pxx,的长度和,w,的频率范围,具体规定为:当输入,x,为实数、,nfft,为偶数时,,Pxx,的长度为(,nfft/2+1,),,w,的范围为,0,;当输入,x,为实数、,nfft,为奇数时,,Pxx,的长度为(,nfft+1,),/2,,,w,的范围为,0,);当输入,x,为复数、,nfft,为偶数或奇数时,,Pxx,的长度为,nfft,,,w,的范围为,0,2,。,25.3.4,谱分析函数,pwelch,Pxx,f=pwelch(x,window,noverlap,nfft,fs),:整数,fs,为采样频率,如果定义,fs,为空向量,则采样频率默认为,1Hz,。,nfft,和,x,决定,Pxx,的长度和,f,的频率范围,具体规定为:当输入,x,为实数、,nfft,为偶数时,,Pxx,的长度为(,nfft/2+1,),,f,的范围为,0,fs/2,;当输入,x,为实数、,nfft,为奇数时,,Pxx,的长度为(,nfft+1,),/2,,,f,的范围为,0,fs/2,);当输入,x,为复数、,nfft,为偶数或奇数时,,Pxx,的长度为,nfft,,,f,的范围为,0,fs),。,.=pwelch(x,window,noverlap,.,range),:当,x,是一个实数的时候,这种调用格式非常有用,它确定,f,或,w,的频率取值范围。字符串,range,可以取,twosided,和,onesided,。,twosided,计算双边,PSD,;,onesided,计算单边,PSD,。,pwelch(.),:该命令在当前,Figure,窗口中绘制出功率谱密度曲线,其单位为,dB/Hz,。,25.4,模拟滤波器设计,对特定频率的频点或该频点以外的频率进行有效滤除的系统,就是滤波器,换句话说,滤波器可以被用来区分不同频率的信号,实现各种模拟信号的处理过程。这里首先介绍模拟滤波器的设计参数,然后主要讨论两种常用的模拟滤波器:即巴特沃思滤波器和切比雪夫滤波器,最后讨论模拟滤波器的相互转换。,25.4.1,滤波器的设计参数,滤波器有,4,个常用的参数,它们分别是:,:通带截止频率,单位,Hz,;,:阻带起始频率,单位,Hz,;,:阻带内最小衰减,又称阻带波纹,单位,dB,;,:通带内允许的最大衰减,又称通带波纹,单位,dB,。,由此,假设采样率为,那么将得到另外两个归一化角频率参数:,:通带截止角频率,单位,rad/s,,计算公式为;,:阻带起始角频率,单位,rad/s,,计算公式为。,通过这些参数就可以衡量一个滤波器的性能了,当给定这些参数时,滤波器的设计参数就给定了,用户依据这些参数进行设计。,25.4.2,巴特沃思滤波器,巴特沃思模拟低通滤波器原型的平方幅频响应函数为:,是低通滤波器的截止频率,,N,为滤波器的阶数。,N,越大,通带和阻带的近似性越好,过渡带也越陡,特性越接近于矩形。巴特沃思滤波器有以下特点:,=,时,幅度衰减,相当于,3dB,衰减点;,在,1,,即在过渡带和阻带中,单调减小,因为,1,,所以快速下降。,在,MATLAB,中,Butterworth,模拟低通滤波器函数调用格式为,Z,,,P,,,K=buttap(N),:,N,为,Butterworth,滤波器的阶数,,Z,、,P,、,K,分别为滤波器的零点、极点、增益。该函数返回,N,阶低通模拟滤波器原型的极点和增益。,25.4.3,切比雪夫型滤波器,巴特沃思滤波器的频率特性无论在通带与阻带都随频率而单调变化,因而如果在通带边缘满足指标,则在通带内肯定满足,也就是会超过指标的要求,因而并不经济。所以,更有效的办法是将指标的精度要求均匀地分布在通带内,或均匀分布在阻带内,或同时均匀分布在通带与阻带内,这谕,璐阅芤笙拢涂缮杓瞥鼋资系偷穆瞬鳌庵致瞬骶确植嫉陌旆可通过选择具有等波纹特性的逼近函数来完成。切比雪夫滤波器的幅度特性就在一个频带中,(,通带或阻带,),具有这种等波纹特性。,巴特沃思滤波器在通带内幅度特性是单调下降的,如果阶次一定,则在靠近截止处,幅度下降很多,或者说,为了使通带内的衰减足够小,需要的阶次,N,很高,为了克服这一缺点,采用切比雪夫多项式来逼近所希望的。切比雪夫滤波器的在通带范围内是等幅起伏的,所以在同样的通带内衰减要求下,其阶数较巴特沃思滤波器要小。,切比雪夫,I,型滤波器的平方幅频响应函数为:。,25.4.4,切比雪夫,型滤波器,切比雪夫,型滤波器的平方幅频响应函数为:。式中,为小于,1,的正数,表示阻带内幅频波纹情况;是截止频率,,N,为多项式的阶数,其中。,MATLAB,中,Chebyshev,型滤波器函数为:,Z,,,P,,,K=cheb2ap(N,Rs),。:,N,为阶数,,Z,、,P,、,K,分别为滤波器的零点、极点、增益;,Rs,为阻带波纹。,25.4.5,模拟滤波器的频域变换,前面设计了模拟低通滤波器,那么如果用户想设计其他类型的频率选择性滤波器,如高通、带通、带阻滤波器,可以将一个低通滤波器的频带进行变换,以使其能够表现其他频率选择性滤波器特性。在,MATLAB,中,下面的函数将实现上述功能。,lp2lp,函数,低通滤波器转换为低通滤波器。,bt,at=lp2lp(b,a,Wo),:这是函数,lp2lp,的传递函数形式,该函数能改变低通滤波器的截止频率,,Wo,为低通滤波器所要实现的截止频率。,At,Bt,Ct,Dt=lp2lp(A,B,C,D,Wo),:这是函数,lp2lp,的连续时间状态空间形式。,25.5 IIR,数字滤波器设计,数字滤波器是数字信号处理的基础,用来对信号进行过滤、检测与参数估计等处理,在通信、图像、语音、雷达等许多领域都有着十分广泛的应用。目前数字滤波器的设计有许多现成的高级语言设计程序,但它们都存在设计效率较低,不具有可视图形,不便于修改参数等缺点,而,MATLAB,信号处理工具箱为数字滤波的研究和应用提供了一个直观、高效、便捷的通道。在,MATLAB,中有许多自带的,IIR,数字滤波器设计函数,下面就介绍一下这些设计函数。,25.5.1,巴特沃思数字滤波器设计(,butter,函数),butter,函数即可以用来设计低通、带通、高通和带阻的模拟巴特沃思滤波器,也可以用来设计这四类的数字巴特沃思滤波器。数字滤波器设计的,butter,函数调用格式如下:,b,a=butter(n,Wn),:函数用来设计一个截止频率为,Wn,的,n,阶低通滤波器。它返回滤波器系数向量,a,、,b,的长度为,n+1,,这些系数按,z,的降幂排列为:,25.5.2,切比雪夫,I,型数字滤波器设计(,cheby1,函数),cheby1,函数即可以用来设计低通、带通、高通和带阻的模拟切比雪夫,I,型滤波器,也可以用来设计这四类的数字切比雪夫,I,型滤波器。它的特性就是通带内等波纹,阻带内单调。数字滤波器设计的,cheby1,函数调用格式如下。,b,a=cheby1(n,Rp,Wn),:函数用来设计一个截止频率为,Wn,、通带波纹为,Rp,(,dB,)的,n,阶切比雪夫低通滤波器。它返回滤波器系数向量,a,、,b,的长度为,n+1,,这些系数按,z,的降幂排列为:,归一化截止频率是滤波器的幅度响应为,-Rp,(,dB,)时的频率,对于,cheby1,来说,归一化截止频率,Wn,取值在,0 1,之间,这里,1,对应内奎斯特频率。如果,Wn,是一个二元向量,如,Wn=w1 w2,,那么,cheby1,函数返回一个带通为,w1w2,、阶数为的带通数字滤波器。,25.5.3,切比雪夫,II,型数字滤波器设计(,cheby2,函数),Cheby2,函数即可以用来设计低通、带通、高通和带阻的模拟切比雪夫,型滤波器,也可以用来设计这四类的数字切比雪夫,型滤波器。它的特性就是通带内单调,阻带内等波纹。,数字滤波器设计的,cheby2,函数调用格式为:,b,a=cheby2(n,Rs,Wn),b,a=cheby2(n,Rs,Wn,ftype,),z,p,k=cheby2(n,Rs,Wn),z,p,k=cheby2(n,Rs,Wn,ftype,),A,B,C,D=cheby2(n,Rs,Wn),A,B,C,D=cheby2(n,Rs,Wn,ftype,),25.5.4,椭圆数字滤波器设计(,ellip,函数),ellip,函数即可以用来设计低通、带通、高通和带阻的模拟椭圆滤波器,也可以用来设计这四类的数字椭圆滤波器。它在通带内和阻带内都是等波纹的。数字滤波器设计的,ellip,函数调用格式如下。,b,a=ellip(n,Rp,Rs,Wn),:函数用来设计一个截止频率为,Wn,、通带波纹为,Rp,(,dB,)、阻带波纹为,Rs,(,dB,)的,n,阶椭圆低通滤波器。它返回滤波器系数向量,a,、,b,的长度为,n+1,,这些系数按,z,的降幂排列为:,归一化截止频率是滤波器的幅度响应为,-Rp,(,dB,)处的通带边缘频率,对于,ellip,函数来说,归一化截止频率,Wn,取值在,0 1,之间,这里,1,对应内奎斯特频率。如果,Wn,是一个二元向量,如,Wn=w1 w2,,那么,ellip,函数返回一个带通为,w1w2,、阶数为的带通数字滤波器。,25.5.5,数字滤波器阶数选择,在滤波器设计中,往往需要找到一个满足滤波器设计指标的最小阶数。在,MATLAB,信号处理工具箱中,针对不同的滤波器提供了这样的阶数选择函数。,Butterworth,滤波器阶数选择函数,buttord,:,n,Wn=buttord(Wp,Ws,Rp,Rs),:该函数返回满足通带衰减不大于,Rp,(,dB,)、阻带衰减大于,Rs,(,dB,)要求的巴特沃思数字滤波器的最小阶数和截止频率。,Wp,是通带截止频率,,Ws,是阻带截止频率。,Wp,和,Ws,的取值都在,0 1,之间,,1,对应的是归一化内奎斯特频率。巴特沃思滤波器的类型有输入参数决定:当,Wp,和,Ws,都是标量并且,WpWs,时,指定滤波器为高通滤波器,通带为(,Wp,,,1,),阻带为(,0,,,Ws,);当,Wp,和,Ws,都是二元向量并且,Ws(1)Wp(1)Wp(2)Ws(2),时,指定滤波器为带通滤波器,通带为(,Wp,(,1,),,Wp,(,2,),阻带为(,0,,,Ws,(,1,)和(,Ws,(,2,),,1,);当,Wp,和,Ws,都是二元向量并且,Wp(1)Ws(1)Ws(2)Wp(2),时,指定滤波器为带阻滤波器,通带为(,0,,,Wp,(,1,)和(,Wp,(,2,),,1,),阻带为(,Ws,(,1,),,Ws,(,2,);,25.6,窗函数,在,FIR,滤波器的设计中,常以传统的窗函数为基础,利用已有的窗函数特性曲线和设计数据进行设计,本节将介绍常用窗函数的基本概念以及在,MATLAB,信号处理工具箱提供的窗函数。,25.6.1,矩形窗,矩形窗是最简单的窗函数,其定义为,在,MATLAB,中的函数调用格式为,w=rectwin(n),:该函数返回一个,n,点的矩形窗,,w,是一个列向量。,25.6.2,海宁窗,海宁(,Hanning,)窗又称汉宁窗,是一个升余弦窗,它的定义为,在,MATLAB,中函数调用格式为:,w=hann(n),:返回一个,n,点的对称的海宁窗,,w,是一个列向量;,w=hann(n,sflag),:返回一个,n,点的海宁窗,由参数,sflag,定义窗口的采样,,sflag,的取值为,periodic,或者,symmetric,(默认值),,periodic,表示海宁窗计算,n+1,点的窗,返回前,n,个点。,25.6.3,汉明窗,汉明(,Hamming,)窗是改进的升余弦窗,它的定义为,在,MATLAB,中函数调用格式为:,w=hamming(n),:返回一个,n,点的对称的汉明窗,,w,是一个列向量;,w=hamming(n,sflag),:返回一个,n,点的汉明窗,由参数,sflag,定义窗口的采样,,sflag,的取值为,periodic,或者,symmetric,(默认值),,periodic,表示汉明窗计算,n+1,点的窗,返回前,n,个点。,25.6.4,布莱克曼窗,布莱克曼,(Blackman),窗是一组升余弦窗函数,它的定义为,在,MATLAB,中函数调用格式为:,w=blackman(n),:返回一个,n,点的对称的布莱克曼窗,,w,是一个列向量;,w=blackman(n,sflag),:返回一个,n,点的布莱克曼窗,由参数,sflag,定义窗口的采样,,sflag,的取值为,periodic,或者,symmetric,(默认值),,periodic,表示汉明窗计算,n+1,点的窗,返回前,n,个点。,25.6.5,凯瑟窗,凯瑟(,Kaiser,)窗的定义为,25.7 FIR,数字滤波器的窗函数设计,FIR,是具有有限长冲激响应数字滤波器,在满足同样的系统要求时,,FIR,数字滤波器的阶数比,IIR,数字滤波器的阶数高、延迟大,但,FIR,数字滤波器具有严格线性相位特性。,25.7.1,窗函数设计法设计步骤,基于窗函数的,FIR,数字滤波器设计是一种典型的,FIR,设计,其具体步骤如下。,(,1,)确定要求数字滤波器逼近的理想频率响应特性。,(,2,)选定滤波器的截断窗函数。根据给定的幅度频率特性的阻带衰耗设计指标选取截断窗函数。一般是给定。,25.7.2,基于窗函数法的,FIR,滤波器设计,MATLAB,信号处理工具箱提供了基于窗函法,FIR,滤波器设计的工具箱函数,fir1,,该函数实现了典型的窗函数法线性相位,FIR,数字滤波器的设计,它可以设计标准的低通、高通、带通、阻通滤波器,在默认情况下,滤波器通过归一化使第一通带的中心频率处的幅频响应为,0dB,。函数,fir1,的调用格式如下。,25.7.3,基于频率采样法的,FIR,滤波器设计,MATLAB,信号处理工具箱提供了基于频率采样法,FIR,滤波器设计的工具箱函数,fir2,,该函数的频率相应可以是任意形态。函数,fir2,的调用格式如下。,25.8,模拟,数字滤波器变换,在滤波器的设计中,模拟滤波器的设计是比较成熟的,可以利用模拟滤波器来设计数字滤波器,也就是把,s,平面映射到,z,平面,使模拟滤波器传递函数,Ha(s),变换为所需的数字滤波器的系统函数,H(z),。实现这种变换的方法主要有,冲激响应不变法和双线性变换法。,25.8.1,冲激响应不变法,冲激响应不变法的基本原理是使数字滤波器的单位冲激响应等于模拟滤波器的冲激响应的抽样值,即:,25.8.2,双线性变换法,冲激响应不变法的主要缺点是频谱交叠产生的混淆,这是从,s,平面到,z,平面的标准变换,z,的多值对应关系导致的,为了克服这一缺点,引入了双线性变换法。,双线性变换法需要一种不会产生多值映射的变换,下面将介绍如何得到,s,平面与,z,平面的这种双线性映射关系。,25.9,小结,在本章中,主要向读者介绍了信号处理工具箱的有关知识,包括信号的表示和生成,滤波器的设计以及频谱分析等,主要内容如下:,信号的表示;,信号的生成;,随机信号处理和谱估计;,模拟滤波器设计;,IIR,数字滤波器设计;,窗函数;,FIR,数字滤波器设计;,模拟,数字滤波器转换。,
展开阅读全文