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

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

ID:21901788

大小:252.00 KB

页数:7页

时间:2018-10-25

哈工大试验方法和数字信号分析处理作业一_第1页
哈工大试验方法和数字信号分析处理作业一_第2页
哈工大试验方法和数字信号分析处理作业一_第3页
哈工大试验方法和数字信号分析处理作业一_第4页
哈工大试验方法和数字信号分析处理作业一_第5页
资源描述:

《哈工大试验方法和数字信号分析处理作业一》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、题目:(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)+si

2、n(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.0003

3、s,满足采样定理。(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=s

4、in(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以及采样的数量来生成不同的滤波后图像,最终选择

5、了如上代码中的数值。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(120

6、1)=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时,滤波效果较好,但

7、有些滞后,所以考虑滤波阶数不能太高或太低。(2)带通滤波练习:使用FIR滤波器滤波:Matlab代码:clearallt=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)=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。