1、现在用抽样频率对这三个正弦信号进行抽样,用MATLAB命令画出各抽样信号的波形及频谱,并分析频率混叠现象.解:分别写出三个频率正弦波的代码与图形:(f1=100HZ的正弦信号)代码如下:Ts=1/3800;dt=0。0001;t1= 0。008:dt:0。008;ft=sin(2pi100t1)。(uCT(t1+0.005)uCT(t1-0.005);subplot(221);plot(t1,ft), grid on;axis(-0。006 0.006 -1.1 1.1);xlabel(Time(sec),ylabel(f(t)title(正弦信号波形 );N=5000;k = -N:N;W
2、= 2pik/(2*N+1)*dt);Fw= dtft*exp(-j*t1*W);subplot(222);plot(W,abs(Fw);grid on;axis(30000 30000 0 0。006);omega),ylabel(F(w);title(正弦信号的频谱);t2=-0。Ts:0.008;fst=sin(2pi*100t2)。(uCT(t2+0。005)uCT(t20。005);subplot(223);plot(t1,ft,:),hold on;stem(t2,fst),grid on;axis(-0.005 0.005 -1。1 1。1);xlabel(Time(sec),y
3、label(fs(t);title(抽样后的信号),hold off;Fsw= Tsfst*exp(jt2W);subplot(224);plot(W,abs(Fsw), grid on;axis(-30000 30000 0 0。006);xlabel(omega),ylabel(Fs(w)抽样信号的频谱);matlab波形如下:其中单个正弦信号(未经抽样)的频谱放大后如下:(200HZ的正弦信号)0001;t1= 0.003:003;ft=sin(2pi*200*t1).*(uCT(t1+0。0025)-uCT(t10.0025);plot(t1,ft), grid on;axis(0。0
4、03 0。003 -1。1 1.1);xlabel(Time(sec),ylabel(200HZ正弦信号波形 );N=5000;k = N:N;W = 2pi*k/(2*N+1)dt);Fw= dtftexp(-jt1W);plot(W,abs(Fw);axis(-30000 30000 0 0.003);omega),ylabel(F(w)200HZ正弦信号的频谱003:Ts:0.003;fst=sin(2*pi200*t2)。*(uCT(t2+0.0025)-uCT(t20。0025);subplot(223);plot(t1,ft,),hold on;stem(t2,fst),grid
5、on;003 0.003 1.1 1.1);Time(sec),ylabel(fs(t);200HZ抽样后的信号),hold off;Fsw= Tsfst*exp(jt2W);omega),ylabel(Fs(w);title(200HZ抽样信号的频谱(3800HZ正弦信号)00001;t1= 1/7600:dt:1/7600;ft=sin(2pi3800t1).*(uCT(t1+1/7600)-uCT(t11/7600);subplot(221);axis(-1/7600 1/7600 -1。1 1.1);f(t)title(3800HZ正弦信号波形 );N=10000;k = -N:W =
6、 2*pik/(2*N+1)*dt);Fw= dtftexp(-jt1W);plot(W,abs(Fw);axis(-200000 200000 0 0。00015);xlabel(omegaF(w)3800HZ正弦信号的频谱t2=-1/7600:1/7600;fst=sin(2pi3800t2)。(uCT(t2+1/7600)uCT(t2-1/7600);plot(t1,ft,:stem(t2,fst),grid on;axis(-1/7600 1/7600 1.1 1.1);),ylabel(fs(t);title(3800HZ抽样后的信号Fsw= Tsfstexp(-jt2plot(W,
7、abs(Fsw), grid on;axis(200000 200000 0 0。00015);),ylabel(Fs(w)title(3800HZ抽样信号的频谱matlab波形如下:可知f=3800Hz的频谱直接混叠在一起,出不了明显的频谱图2. 结合抽样定理,用MATLAB编程实现信号经冲激脉冲抽样后得到的抽样信号及其频谱,并利用重构信号。解:认为原Sa(t)的信号带宽为wm=2,取wc=1.2wmwm=2;wc=1.2wm;Ts=1;1;t1= -10:10;ft=sinc(t1/pi)。*(uCT(t1+10)-uCT(t1-10);W = 2*pi*k/(2*N+1)dt);n=10
8、0:100;nTs=n*Ts;fst=sinc(nTs/pi)。*(uCT(nTs+10)-uCT(nTs10);:),hold on;stem(nTs,fst),grid on;axis(-10 10 -0.4 1。1);Sa(t)抽样后的信号Fsw= Ts*fst*exp(jnTs*W);plot(W,abs(Fsw), grid on;axis(20 20 0 4);Fs(w);Sa(t)抽样信号的频谱t=10:f=fstTswc/pi*sinc(wc/pi)(ones(length(nTs),1)*t-nTs*ones(1,length(t);plot(t,f),grid on;axi
9、s(-10 10 -0.4 1.1);xlabel(t),ylabel(f(t);title(由f(nTs)信号重建得到Sa(t)信号);error = abs(f-ft);subplot(224)plot(t,error),grid onxlabel(t),ylabel(error(t);title(重建信号与原Sa(t)信号的绝对误差);matlab的波形如下:三、实验体会本次实验遇到的问题:第一题:用书上的例子的代码解题,但是发现抽样信号的频谱与未抽样信号的频谱除了周期延拓外并没有幅度减去应有的倍数(变为1/T),后来发现算未经抽样的频谱公式为:Fw= dt*ft*exp(-j*t1W)
10、;,而经过抽样后的频谱的公式:Fsw= Tsfstexp(-jt2*W);两者没有实质的差别,唯一的区别是两者时间的单元分别为:dt和Ts,这样并不能引起幅度的变化,虽然解释了图形幅度没变,但是不知道理论上图形幅度缩减一定的倍数(1/T)的原因.第二题:解本题时本来也想先作出未经抽样时Sa(t)的频谱的,但是最终matlab没有通过编译,提示错误Error using = mtimes Out of memory。 Type HELP MEMORY for your options.好像是超出内存限制。所以只能直接作出抽样后信号的频谱。再利用书上的公式作出重建的Sa(t)信号再求绝对误差,但是出现了在t=10处绝对误差突然增大的现象,调整dt与Ts的值后t=10处的绝对误差依然很大,这一点暂时没有解决。四、问题与思考(1)由于抽样间隔改为2.5,对比例2可以发现明显变小,容易产生频谱混叠,而且低通滤波器的截止频率不满足,不能完整的采出信号(2)在信号的意义上nTS相当于离散的,t则为连续的
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1