您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 基于MATLAB的数字信号处理课程设计
基于MATLAB的数字信号处理课程设计一、IIR模拟低通滤波器设计(1)原理:切比雪夫模拟低通滤波器特点,误差值在规定的频段上等波纹变化。巴特沃兹滤波器在通带内幅度特性是单调下降的,如果阶次一定,则在靠近截止Ωc处,幅度下降很多。或者说,为了使通带内的衰减足够小,需要的阶次N很高。为了克服这一缺点,采用切比雪夫多项式来逼近所希望的|H(jΩ)|2。切比雪夫滤波器的|H(jΩ)|2在通带范围内是等幅起伏的,所以在同样的通常内衰减要求下,其阶数较巴特沃兹滤波器要小。切比雪夫滤波器的振幅平方函数:(2)源代码:clc;clearallRp=1;As=25;fp=1000;fs=1500;wp=0.2;ws=0.5;[N,Wn]=cheb1ord(wp,ws,Rp,As);[num,den]=cheby1(N,Rp,Wn,'s');[h,w]=freqs(num,den);g=20*log10(abs(h));g1=angle(h);plot(w,g);gridon;xlabel('\omega/\pi');ylabel('GainindB');title('GainChebylAnologyLowpassFilter');figure;plot(w,g1);gridon;xlabel('\omega');ylabel('phase');title('ThePhaseResponeofCheby1AnologyLowpassFilter');figure;zplane(num,den);gridon;(3)波形图:-1-0.500.51-1-0.8-0.6-0.4-0.200.20.40.60.81RealPartImaginaryPart00.10.20.30.40.50.60.70.80.91-4-3-2-101234phaseThePhaseResponeofCheby1AnologyLowpassFilter00.10.20.30.40.50.60.70.80.91-50-45-40-35-30-25-20-15-10-50/GainindBGainChebylAnologyLowpassFilter二、IIR数字低通滤波器设计(1)原理:数字滤波器是数字信号处理的重要基础,在对信号的过滤、监测与参数估计等处理过程中,它是使用最为广泛的一种新型系统。数字滤波器是指完成信号滤波处理功能的、用有限精度算法实现的离散时间线性时不变系统。其输入是一组由模拟信号取样和量化编码的数字量,其输出则是经过数字变换的另一组数字量。数字滤波器具有稳定性高、精度高、灵活性大等突出优点。IIR滤波器是一种类型的LTI系统,这类系统有无线持续时间的冲击响应,因此,这类系统通常叫做无限冲击响应(IIR)系统或者IIR滤波器。在计算当前的输出值时,不但需要输入信号的值还需要之前所计算的输出信号的值。由于输出要被“反馈”回到输入信号进行重新组合,所以这类系统属于反馈系统。同时这类滤波器这叫做递归滤波器。一个N阶IIR滤波器的系统函数可以表示为:NkkkMkkkzazbzH1-0-1(1)NkMkkknyknxbny10---(2)(2)巴特沃斯数字低通滤波器的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)));%绘制幅频响应gridon;%加坐标网格xlabel('频率/Hz');ylabel('振幅/dB');subplot(2,1,2);plot(W,abs(H));gridon;xlabel('频率/Hz');ylabel('振幅/H');(3)波形:010002000300040005000600070008000900010000-40-20020频率/Hz振幅/dB01000200030004000500060007000800090001000000.511.5频率/Hz振幅/H三、基于矩形窗的FIR数字滤波器设计(1)原理:FIR滤波器的数学表达式为:10()()()Niynhixni(2-1)式中:N为FIR滤波器的抽头数;x(n)为第n时刻的输入样本;h(i)为FIR滤波器第i级抽头系数。普通的直接型FIR滤波器结构如图2.1所示。x(n)1/Z1/Z1/Zh(0)h(1)h(N-1)h(N)y(n)h(2)……图2.1卷积码编码器的一般形式在自适应处理、数据通信等领域中往往要求信号在传输过程中不能有明显的相位失真,FIR滤波器可以做到线性相位满足此要求。FIR滤波器实质上是一个分节的延迟线,把每一节的输出加权累加,得到滤波器的输出。对于FIR滤波器的单位脉冲响应h(i)只要满足以下2个条件之一,则为线性相位滤波器。(1),Oddsymmetry()(1),DualsymmetryhNihihNi(2-2)线性相位的FIR滤波器具有中心对称的特性,其对称中心在N/2处。FIR滤波器的结构主要是非递归结构,没有输出到输入的反馈。并且FIR滤波器很容易获得严格的线性相位特性,避免被处理信号产生相位失真【2】。而线性相位体现在时域中仅仅是h(n)在时间的延时,这个特点在图像信号处理、数据传输等波形传递系统中是非常重要的。此外,他不会发生阻塞现象,能避免强信号淹没弱信号,因此特别适合信号强弱相差悬殊的情况。其主要的不足之处是,其较好的性能是以较高的阶数为代价换来的。因此,在保证相同性能的前提下,努力降低其阶数是FIR数字滤波器设计的重要因素之一。矩形窗是一种最简单的窗函数,从阻带衰减的观点来看也是性能最差的一种,其窗函数为1,01()0,nMwnelse(2-4)它的频率响应函数是12sin()sin()22()()sin()sin()22MiwiwrwMwMWee(2-5)这是窗的振幅响应。由上式真正的振幅响应为:sin()112()(),122sin()2cc(2-6)这表明在过渡带和阻带衰减的精确分析中,窗的振幅响应的连续积分是必须的。振幅响应()rwW在1ww有第一个零值,此处12wM=即1w=2M因此,主瓣宽度是21w=4/M,从而近似过渡带宽是4/M。第一个旁瓣的幅度近似在w=3/M处,并给出为3sin()322(),133sin()2rMwMMMW(2-7)将这个值与主瓣幅度(等于M)比较,这个峰值旁瓣幅度是主瓣幅度的13dB。累加振幅响应由第一个旁瓣幅度在21dB,这就形成了21dB的最小阻带衰减而与窗的宽度M无关。利用最小阻带衰减,可将过渡带宽准确计算处,这个计算出的真正过渡带宽是sw—pw=1.8M,这大约是近似带宽的一半。很清楚,在时域这是一种简单的加窗运算,并且在频域也是一种容易分析的函数。然而,这里存在两个主要问题。首先,21dB的最小阻带衰减在实际应用中是不够的。其次,矩形加窗是对这个无限长的()rnh的一种直接截取,它遭受吉布斯现象的影响。如果增加M,没过旁瓣的宽度都将减小,但是在每个旁瓣下的面积将保持不变。因此,旁瓣的相对幅度保持不变,最小阻带衰减仍为21dB,这就意味着全部波纹将向通带边缘集束。(2)源代码:%程序功能:设计低通滤波器并画出其频谱图:fb=10;fc=13;%设置滤波器截止频率fs=100;wb=2*pi*fb/fs;ws=2*pi*fc/fs;wc=0.5*(wb+ws);tr_width=ws-wb;%过渡带宽M=ceil(1.8*pi/tr_width);%产生一理想低通滤波器alpha=(M-1)/2;n=[0:1:(M-1)];m=n-alpha+eps;hd=sin(wc*m)./(pi*m);w_box=(boxcar(M))';%矩形窗窗函数h=hd.*w_box;h=hd.*w_box;h=hd.*w_box;[H,w]=freqz(h,[1],1000,'whole');H=(H(1:1:501))';w=(w(1:1:501))';mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);%[db,mag,pha,grd,w]=freqz_m(h,[1]);n=[0:1:M-1];figure(1);subplot(2,2,1);stem(n,hd);%理想脉冲响应xlabel('n');ylabel('hd(n)');title('IdealImpulseResponse');subplot(2,2,2);stem(n,w_box);%矩形窗xlabel('n');ylabel('w(n)');title('BoxcarWindow');subplot(2,2,3);stem(n,h);%实际脉冲响应xlabel('n');ylabel('h(n)');title('ActualImpulseResponse');subplot(2,2,4);plot(w*fs/(2*pi),db);%幅度响应axis([040-500]);xlabel('Frequency(Hz)');ylabel('Decibels');title('MagnitudeResponseindB');(3)波形图:0102030-0.100.10.20.3nhd(n)IdealImpulseResponse010203000.51nw(n)BoxcarWindow0102030-0.100.10.20.3nh(n)ActualImpulseResponse010203040-50-40-30-20-100Frequency(Hz)DecibelsMagnitudeResponseindB四、总结信号处理已有一段悠久而丰富的历史了,,这一领域总是得益于它的理论,应用与实现信号处理系统的技术之间的紧密结合,日见增长的应用范围和日益增长的高级算法的需求总是与现实信号处理系统的器件技术的快速发展齐头并进.在许多方面都清楚的表明,信号处理的重要性和地位在迅速提高和扩大。八十年代以来,DSP芯片的复杂性和容量一直成指数的增长着,并且没有放慢的迹象.随着整片集成技术的迅速发展,价廉、超微型和低功耗的很复杂的数字信号处理系统也将会实现。因此,数字信号处理的重要性无疑仍会与日俱增,而滤波器作为数字信号处理的重要组成部分也必将迎来革命性的变革。
本文标题:基于MATLAB的数字信号处理课程设计
链接地址:https://www.777doc.com/doc-2570670 .html