《实验三 信号采样与重建(参考答案)》由会员分享,可在线阅读,更多相关《实验三 信号采样与重建(参考答案)(17页珍藏版)》请在金锄头文库上搜索。
1、实验三 信号采样与重建lLecture Scriptl2013.5.5一、实验目的l1、进一步学习MATLAB的函数及其表示。l2、掌握及验证信号的SHANNON采样定理。l3、由采样序列重构恢复原信号。 二、实验内容l1、对连续时间信号y(t)sin(24t)+ sin(40t), 它有 12Hz 和 20Hz 两个等幅度分量。用MATLAB作 图法求出Nyquist频率2fmax。 l %Analog SignallDt=0.005; t=-1:Dt:1; % sample frequency 200 Hzly=sin(24*pi*t)+sin(40*pi*t);lsubplot(3,1,
2、1); plot(t*4,y); xlabel(t in 1/4sec.); ylabel(y(t); l title(Analog Signal);lsubplot(3,1,2); lplot(t*12,sin(24*pi*t); xlabel(t in 1/12sec.); l ylabel(sin(24*pi*t); %f=12Hz lsubplot(3,1,3);lplot(t*20,sin(40*pi*t);lxlabel(t in 1/20sec.); lylabel(sin(40*pi*t); %f=20Hz复合时看不出频率分离成两个分量一般的分离成很多个正余弦, 最高频率的2倍
3、就是。l另一解法频谱法(适合很多个正弦分量情况 )lt=0:0.01:1; % T0.01 Sec,sample frequency 100 Hzly=sin(24*pi*t)+sin(40*pi*t);lY=fft(y); lf=(0:length(y)-1)/length(y)*100; 每点对应频率lfigure(1); plot(f,abs(Y); grid ;%幅度lfigure(2); plot(f,unwrap(angle(Y)*180/pi); grid ;l相位曲线不作折叠,而是全部展开的画法。 两个频率分量采样频率200l2:设连续信号x(t)=exp(1000|t|)时l
4、 A、求连续傅利叶变换X(jw)(用很密的点 )所以:满足抽样定理,从而可以用xan代替x(t), 范围0.005到0.005之间每间隔5*105,20KHz,共200点 , 从0到起点0.005时,e50.0067,已经足够小。0相位,相对 幅度直流处最 大0.002l2:设连续信号x(t)=exp(1000|t|)时l A、求连续时间傅利叶变换X(jw)lt=-0.005 : 0.00005 : 0.005; %10mS长,201点密度lx=exp(1000*abs(t);共有201点lWmax=2*pi*2000; 只要算到频率2000Hz止lM=500; m=0:1:M;l W=m*W
5、max/M; 得到W(1)W(501)共501个频谱点值。 lXa=x*exp(j* t *W)*0.00005; l 计算谱501点Xa(1) Xa(501).lXa=real(Xa); Xa=fliplr(Xa),Xa(2:501);%左折但Xa(1)不动 lW=fliplr(W),W(2:501); 频点也左折。lfigure(1); plot(t*1000,x, r); grid; %毫秒lfigure(2); plot(W/(2*pi*1000),Xa*1000, r); 幅度放大 1000频谱波形幅度放大1000倍后l2:设连续信号x(t)=exp(1000|t|)时l B、Fs=
6、5000,和1000Hz先采样,在求离散DFT频谱。lt=-0.005 : 0.00005 : 0.005; %原信号条件不变lx1=exp(1000*abs(t);lTs=0.0002; n=25:1:25; %Fs=5000,lx=exp(1000*abs(n*Ts);lM=500;m=0:1:M; W=pi*m/M; 频率点lXa=x*exp(j* n *W); 计算离散谱lXa=real(Xa); Xa=fliplr(Xa),Xa(2:M+1);lW=fliplr(W),W(2:M+1);lfigure(1); plot(t*1000,x1,r); hold on;lstem (n*T
7、s*1000,x); hold off;lfigure(2); plot(W/pi,Xa); 频谱。序列lC、减小Fs=1000Hz,先采样,再求离散DFT频谱 。lt=-0.005 : 0.00005 : 0.005; %连续的条件不变lx1=exp(1000*abs(t);lTs=0.001; n=5:1:5; %Fs=1000,Ts1mSlx=exp(1000*abs(n*Ts);n*Ts=0.005 0.005lM=500;m=0:1:M; W=pi*m/M; 频率点lXa=x*exp(j* n *W); 计算离散谱lXa=real(Xa); Xa= fliplr(Xa), Xa(2:
8、M+1);lW=fliplr(W),W(2:M+1);lfigure(1); plot(t*1000,x1,r); hold on;lstem (n*Ts*1000,x); hold off;lfigure(2); plot(W/pi,Xa); 减低采样率频谱,注意两边衰减 没有接近0。时域采样序列。D 信号的重构,恢复。Ts=0.0002; n=25:1:25; Fs=5000;lt=-0.005 : 0.00005 : 0.005; nTsn*Ts;lx=exp(1000*abs(nTs);序列lxaspline(nTs,x,t);三次样条函数重构。lerror1max(abs(xaexp
9、(1000*abs(t);lfigure(1); plot(t*1000,xa,r); ltext(2,0.5,strcat(error=,num2str(error1);l hold on; 已绘制的曲线保留。lstem (n*Ts*1000,x); hold off;最大误差逐点进行连续的减重 构的D 信号的重构时,不能恢复。Ts=0.001; n=5:1:5; Fs=1000;lt=-0.005 : 0.00005 : 0.005; nTsn*Ts;lx=exp(1000*abs(nTs);序列lxaspline(nTs,x,t);三次样条函数法重构 。lerror2max(abs(xa
10、exp(1000*abs(t);lfigure(1); plot(t*1000,xa,r); ltext(2,0.5,strcat(error=,num2str(error2);l hold on;lstem (n*Ts*1000,x); hold off;最大误差有较大失真三、思考题:l 连续时间信号的傅利叶变换matlab求法,这 里采用的近似公式是什么?l从序列重构连续信号所采用的matlab函数是 什么?lshannon采样定理中的信号Nyquist频率是指 什么?与采样频率有什么不同?四、实验报告要求:l 简述实验目的l 按实验项目手工写出程序l 打印实验图形结果,并粘贴于程序对应处。l 简要回答3个思考题