哈工大试验方法和数字信号分析处理作业一

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

完美.格式.编辑专业.资料.整理题目:(1)给定数字信号:x(t)=sin(20*pi*t)+sin(100*pi*t)+sin(400*pi*t);即该信号由10HZ,50HZ,200HZ。三个正弦信号合成。要求:绘出上述给定数字信号的曲线x(t)。低通滤波练习:分别用FIR、IIR滤波器滤去50Hz、200Hz信号,保留10Hz信号;绘出滤波前和滤波后的信号曲线,并做对比;滤波过程中的问题讨论。带通滤波练习:用FIR滤波器滤去10Hz、200Hz信号,保留50Hz信号;绘出滤波前和滤波后的信号曲线,并做对比;滤波过程中的问题讨论。(2)给定数字信号:X(t)=sin(2*pi*10*t)+sin(2*pi*50*t)+sin(2*pi*200*t)+0.6*randn(1,N)即在原信号上叠加上一个白噪声信号。要求:绘出上述给定数字信号的曲线x(t)。分别用低通滤波器和带通滤波器(FIR、IIR任选)滤波、绘曲线对比、讨论。注:本次作业要求使用我们课上(§3-3、§3-4)所推导的滤波器(公式)滤波;不许使用MATLAB中的滤波函数。1.数字信号为:x(t)=sin(20*pi*t)+sin(100*pi*t)+sin(400*pi*t);时因为,最大频率为200HZ,故由采样定理dt=1/2*fmax,可得dt=0.0025s,取dt=0.0003s,满足采样定理。(1)绘出x(t)图像:Matlab代码:clearallt=0:0.0005:0.6;t1=0.0005;F=15;N=1201;x=sin(2*pi*10*t)+sin(2*pi*50*t)+sin(2*pi*200*t);x1=sin(2*pi*10*t);plot(t,x,'b');图形如下:完美.格式.编辑专业.资料.整理图1原始信号图像(2)低通滤波练习:1.FIR滤波器:Matlab代码:clearallt=0:0.0005:0.6;t1=0.0005;F=15;x=sin(2*pi*10*t)+sin(2*pi*50*t)+sin(2*pi*200*t);x1=sin(2*pi*10*t);y(1201)=0;fork=50:1100fori=-20:20ifi==0fi=2*F*t1;elsefi=sin(2*pi*F*i*t1)/pi/i;endy(k)=y(k)+fi*x(k-i);endendplot(t,x1,'k',t,x,'b',t,y,'r');图像如下:图2FIR低通滤波信号图像完美.格式.编辑专业.资料.整理图3FIR低通滤波信号图像i=-30:30,k=70:1100时分析讨论:由图可以看出,原始图像有正弦信号叠加后十分混乱,滤波后基本滤出了10HZ的信号,设计滤波器时,通过改变N1和N2以及采样的数量来生成不同的滤波后图像,最终选择了如上代码中的数值。2.IIR滤波器:Matlab代码:clearallt=0:0.0005:0.6;x=sin(2*pi*10*t)+sin(2*pi*50*t)+sin(2*pi*200*t);x1=sin(2*pi*10*t);w=tan(pi*30*0.0005);%求二阶滤波器系数f0=(w*w)/(1+(2^0.5)*w+w*w);f1=2*f0;f2=(w*w)/(1+(2^0.5)*w+w*w);g1=(-2*(1-w*w))/(1+(2^0.5)*w+w*w);g2=(1-(2^0.5)*w+w*w)/(1+(2^0.5)*w+w*w);y(1201)=0;fori=1:3%用二阶滤波器滤波三次fork=3:1200y(k)=f0*x(k)+f1*x(k-1)+f2*x(k-2)-g1*y(k-1)-g2*y(k-2);endx=y;endy=x;x=sin(2*pi*10*t)+sin(2*pi*50*t)+sin(2*pi*200*t);plot(t,x1,'k',t,x,'b',t,y,'r');图像如下:完美.格式.编辑专业.资料.整理图4IIR低通滤波信号图像,阶数=8时图5IIR低通滤波信号图像,阶数=4时图6IIR低通滤波信号图像,阶数=2时分析讨论:阶数在2阶时严重失真,阶数在4阶时稍有好转,而阶数等于8时,滤波效果较好,但有些滞后,所以考虑滤波阶数不能太高或太低。(2)带通滤波练习:使用FIR滤波器滤波:Matlab代码:clearall完美.格式.编辑专业.资料.整理t=0:0.0005:0.6;t1=0.0005;dF=(50-10)/2;F0=(10+50)/2;x=sin(2*pi*10*t)+sin(2*pi*50*t)+sin(2*pi*200*t);x1=sin(2*pi*10*t);y(1201)=0;fork=50:1100fori=-20:20ifi==0fi=4*dF*t1;elsefi=2*sin(2*pi*dF*i*t1)*cos(2*pi*F0*i*t1)/pi/i;endy(k)=y(k)+fi*x(k-i);endendplot(t,x1,'k',t,x,'b',t,y,'r');图像如下:图7FIR带通滤波信号图像分析讨论:用FIR滤波器作带通滤波,虽然没有滞后,但在波峰处容易失真。2.数字信号为:x(t)=sin(20*pi*t)+sin(100*pi*t)+sin(400*pi*t)+0.6*randn(1,N)(1)叠加白噪声后的原始图像:完美.格式.编辑专业.资料.整理图8叠加白噪声后的原始图像(2)选用FIR滤波器滤波FIR低通滤波器:Matlab代码:clearallt=0:0.0005:0.6;t1=0.0005;F=15;N=1201;x=sin(2*pi*10*t)+sin(2*pi*50*t)+sin(2*pi*200*t)+0.6*randn(1,N);x1=sin(2*pi*10*t);y(1201)=0;fork=50:1100fori=-20:20ifi==0fi=2*F*t1;elsefi=sin(2*pi*F*i*t1)/pi/i;endy(k)=y(k)+fi*x(k-i);endendplot(t,x1,'k',t,x,'b',t,y,'r');图像如下:完美.格式.编辑专业.资料.整理图9添加白噪声后FIR低通滤波信号图像分析讨论:滤波效果十分不好,虽然没有滞后,但失真严重。(1)FIR带通滤波器:Matlab代码:clearallt=0:0.0005:0.6;t1=0.0005;dF=(50-10)/2;F0=(10+50)/2;N=1201;x=sin(2*pi*10*t)+sin(2*pi*50*t)+sin(2*pi*200*t)+0.6*randn(1,N);x1=sin(2*pi*10*t);y(1201)=0;fork=50:1100fori=-20:20ifi==0fi=4*dF*t1;elsefi=2*sin(2*pi*dF*i*t1)*cos(2*pi*F0*i*t1)/pi/i;endy(k)=y(k)+fi*x(k-i);endendplot(t,x1,'k',t,x,'b',t,y,'r');图像如下:完美.格式.编辑专业.资料.整理图10添加白噪声后FIR带通滤波信号图像分析讨论:叠加白噪声后,带通滤波比低通滤波效果要好些,曲线较为光滑,但波峰失真严重。

1 / 8
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功