您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 离散时间信号通过线性时不变系统
1数字信号处理实验报告实验名称:离散时间信号通过线性时不变系统姓名:专业:年级:学号:指导教师:2一、实验目的1、通过本实验,进一步加深对离散线性时不变系统的理解。2、掌握利用线性卷积求解离散线性时不变系统输出的方法。3、掌握利用差分方程求解离散线性时不变系统输出的方法。二、实验要求1、简述实验目的及原理。2、实验步骤附上输入输出信号曲线,分析所得的图形。3、总结实验中的主要结论。三、实验步骤1、编程前复习相关理论知识。2、编制信号产生、卷积、求解差分方程和显示子程序。Xa(n)=sin(2πfn),0≤n≤N,f=1/55Xb(n)=sin(2πf1n)+sin(2πf2n)),0≤n≤N-1,f1=1/55,f2=20/55;N取大于等于500.设两个离散时间线性时不变系统分别为:系统1:h1(n)=1,0≤n≤49,系统2:01()()()MNiiiiynbxniayni其中b0=0.0223,b1=0.01,b2=0.0223,a1=-1.7007,a2=0.7613.四、实验结果及分析实现代码1:#includestdio.h#includegraphics.h#includemath.hvoidmain(){inti,j,sum;floatx[550]={0.0},h[550]={0.0},y[550]={0.0},w[550]={0.0},z[550]={0.0};for(i=0;i500;i++)x[i]=sin(6.28/55.0*i);for(i=0;i500;i++)w[i]=sin(6.28/55.0*i)+sin(125.6/55.0*i);for(j=0;j50;j++)h[j]=1.0;for(j=0;j550;j++){for(i=0;i=j;i++)3{y[j]=y[j]+x[i]*h[j-i];}}for(j=0;j550;j++){for(i=0;i=j;i++){z[j]=z[j]+w[i]*h[j-i];}}initgraph(1200,600);for(i=0;i550;i++)line(100+i,50,100+i,x[i]*25+50);for(i=0;i550;i++)line(100+i,150,100+i,w[i]*25+150);for(i=0;i550;i++)line(100+i,280,100+i,y[i]*5+280);for(i=0;i550;i++)line(100+i,400,100+i,z[i]*5+400);getchar();closegraph();}图1说明:从上往下分别为:xa(n),xb(n),xa(n)过系统1,xb(n)过系统1代码2:#includestdio.h#includemath.h#includegraphics.hvoidmain(){inti,j,n;floatx[550]={0.0},w[550]={0.0},h[550]={0.0},y[550]={0.0},z[550]={0.0},a[550]={0.0},b[550]={0.0};for(i=0;i500;i++)x[i]=sin(6.28/55.0*i);for(i=0;i500;i++)w[i]=sin(6.28/55.0*i)+sin(125.6/55.0*i);a[1]=-1.7007,a[2]=0.7613;b[0]=0.0233,b[1]=0.01,b[2]=0.233;y[0]=0.0223*x[0];printf(%f,y[0]);for(n=1;n550;n++){for(i=1;(i3)&&((n-i)=0);i++)4{y[n]=y[n]-a[i]*y[n-i];}for(j=0;(j3)&&((n-j+1)=0);j++){y[n]=y[n]+b[j]*x[n-j];}}z[0]=0.0223*w[0];printf(%f,z[0]);for(n=1;n550;n++){for(i=1;(i3)&&((n-i)=0);i++){z[n]=z[n]-a[i]*z[n-i];}for(j=0;(j3)&&((n-j+1)=0);j++){z[n]=z[n]+b[j]*w[n-j];}}initgraph(1200,600);for(i=0;i550;i++)line(100+i,50,100+i,x[i]*25+50);for(i=0;i550;i++)line(100+i,150,100+i,w[i]*25+150);for(i=0;i550;i++)line(100+i,280,100+i,y[i]*5+280);for(i=0;i550;i++)line(100+i,400,100+i,z[i]*5+400);getchar();closegraph();}图2说明:从上往下分别为:xa(n),xb(n),xa(n)过系统2,xb(n)过系统2.实验分析:比较图1与图2可以看出,对信号1而言,区别:系统1输出相对于系统2有较大的延迟!共性:两系统对信号1的高频分量的滤除效果均比较好!对信号2而言:区别:系统1滤除效果明显比系统2差,系统1相较于系统2延迟较大。共性:均对高频有一定的滤除效果。5进一步分析系统一的幅频特性系统一为50阶矩形窗低通滤波器:N=50;wn=rectwin(N);X=20*log10(abs(fft(wn,1024))/max(abs(fft(wn,1024))));plot((1:1024)/512,X(1:1024));gridon;xlabel('\omega/\pi');ylabel('20lg|H(\omega)|');title('系统一幅频响应');00.511.52-80-70-60-50-40-30-20-100/20lg|H()|系统一幅频响应1120.0364(/)wfrads,2220.727(/)wfrads,从图像上可以看出,系统一对1w的衰减不到13dB,因此通过系统后可以较好保留,而对2w的衰减达到了约35dB,但是FIR滤波器滤波效果差,实际滤波的时候对2w的信号频率分量没有完全滤除,其上出现的毛刺为没有完全滤除2w的频率分量。系统二的幅频响应角度进行分析:A=[1-1.70070.7613];B=[0.02230.010.0223];[H,w]=freqz(B,A);X=20*log10(abs(H)/max(abs(H)));w=w/pi;plot(w,X);gridon;xlabel('\omega/\pi');ylabel('20lg|H(\omega)|');title('系统二幅频响应');600.20.40.60.81-100-90-80-70-60-50-40-30-20-100/20lg|H()|系统二幅频响应系统二的幅频特性此时可以看出系统二也是低通滤波器,对1w的衰减接近于0,而对于2w的衰减达到-45dB,因此信号()axn和()bxn通过系统二后的输出相同,都将频率为1w的信号保留下来,把频率为2w的信号滤掉了。五、实验总结①通过实验现象与理论分析结果相结合可以加深对FIR和IIR系统的理解。FIR系统暂态较长,还有拖尾现象。这是由于H(n)有限长,在做线性卷积时,输出结果还与输入的前m-1点有关。从幅频响应上来看,其滤波效果也并不理想,过渡带较长,且旁瓣最大衰减不够大。IIR系统存在着输出对输入的反馈,系统存在极点,它的暂态几乎为零,从幅频响应上看,通带衰减很小,阻带衰减较大,因此对本次实验的滤波效果很好。②实际中需要根据输入信号来合理的选取滤波器并确定滤波器的阶数。FIR和IIR各有特点,应该结合实际灵活应用。③对于C语言,首先要理解计算过程,对于算法的实现可以帮助加深对相关知识的理解。7教师评语指导教师:年月日
本文标题:离散时间信号通过线性时不变系统
链接地址:https://www.777doc.com/doc-1902422 .html