信号与系统 抽样定理实验.docx
《信号与系统 抽样定理实验.docx》由会员分享,可在线阅读,更多相关《信号与系统 抽样定理实验.docx(9页珍藏版)》请在冰点文库上搜索。
信号与系统抽样定理实验
信号与系统
实验报告
实验六抽样定理
实验六抽样定理
一、实验内容:
(60分)
1、阅读并输入实验原理中介绍的例题程序,观察输出的数据和图形,结合基本原理理解每一条语句的含义。
2、已知一个连续时间信号f(t)=sinc(t),取最高有限带宽频率fm=1Hz。
(1)分别显示原连续信号波形和Fs=fm、Fs=2fm、Fs=3fm三种情况下抽样信号的波形;
程序如下:
dt=0.1;
f0=0.2;
T0=1/f0;
fm=5*f0;
Tm=1/fm;
t=-10:
dt:
10;
f=sinc(t);
subplot(4,1,1);
plot(t,f);
axis([min(t),max(t),1.1*min(f),1.1*max(f)]);
title('ÔÁ¬ÐøÐźźͳéÑùÐźÅ');
fori=1:
3;
fs=i*fm;Ts=1/fs;
n=-10:
Ts:
10;
f=sinc(n);
subplot(4,1,i+1);stem(n,f,'filled');
axis([min(n),max(n),1.1*min(f),1.1*max(f)]);
end
运行结果如下:
(2)求解原连续信号和抽样信号的幅度谱;
程序:
dt=0.1;fm=1;
t=-8:
dt:
8;N=length(t);
f=sinc(t);
wm=2*pi*fm;k=0:
N-1;w1=k*wm/N;
F1=f*exp(-j*t'*w1)*dt;subplot(4,1,1);plot(w1/(2*pi),abs(F1));
axis([0,max(4*fm),1.1*min(abs(F1)),1.1*max(abs(F1))]);
fori=1:
3;
ifi<=2c=0;elsec=1;end
fs=(i+c)*fm;Ts=1/fs;
n=-6:
Ts:
6;
N=length(n);
f=sinc(n);
wm=2*pi*fs;
k=0:
N-1;
w=k*wm/N;
F=f*exp(-1i*n'*w)*Ts;
subplot(4,1,i+1);plot(w/(2*pi),abs(F));
axis([0,max(4*fm),0.5*min(abs(F)),1.1*max(abs(F))]);
end
波形如下:
(3)用时域卷积的方法(内插公式)重建信号。
程序、波形如下:
dt=0.01;f0=0.2;T0=1/f0;
fm=5*f0;Tm=1/fm;
t=-3*T0:
dt:
3*T0;
x=sinc(t);
subplot(4,1,1);plot(t,x);
axis([min(t),max(t),1.1*min(x),1.1*max(x)]);
title('原连续信号与抽样信号');
fori=1:
3;
fs=i*fm;Ts=1/fs;
n=0:
(3*T0)/Ts;
t1=-3*T0:
Ts:
3*T0;
x1=sinc(n/fs);
T_N=ones(length(n),1)*t1-n'*Ts*ones(1,length(t1));
xa=x1*sinc(fs*pi*T_N);
subplot(4,1,i+1);plot(t1,xa);
axis([min(t1),max(t1),1.1*min(xa),1.1*max(xa)]);
end
3、已知一个时间序列的频谱为:
分别取频域抽样点数N为3、5和10,用IFFT计算并求出其时间序列x(n),绘图显示个时间序列。
由此讨论由频域抽样不失真地恢复原时域信号的条件。
程序:
Ts=1;N0=[3,5,10];
forr=1:
3;
N=N0(r);
D=2*pi/(Ts*N);
kn=floor(-(N-1)/2:
-1/2);
kp=floor(0:
(N-1)/2);
w=[kp,kn]*D;
X=2+4*exp(-j*w)+6*exp(-j*2*w)+4*exp(-j*3*w)+2*exp(-j*4*w);
n=0:
N-1;
x=ifft(X,N)
subplot(1,3,r);stem(n*Ts,abs(x),'filled');
box
end
显示数据:
x=6.00006.00006.0000
x=2.00004.00006.00004.00002.0000
x=
Columns1through6
2.0000-0.0000i4.0000+0.0000i6.0000-0.0000i4.0000+0.0000i2.0000-0.0000i0+0.0000i
Columns7through10
-0.0000-0.0000i0+0.0000i0-0.0000i0+0.0000i
波形如下:
由此讨论由频域抽样不失真地恢复原时域信号的条件:
由
的频谱表达式可知,有限长时间序列x(n)的长度M=5,现分别取频域抽样点数为N=3,5,10,并由图形的结果可知:
①当N=5和N=10时,N≥M,能够不失真地恢复出原信号x(n);
②当N=3时,N<M,时间序列有泄漏,形成了混叠,不能无失真地恢复出原信号x(n)。
混叠的原因是上一周期的后2点与本周期的前两点发生重叠
结论:
从频域抽样序列不失真地恢复离散时域信号的条件是:
频域抽样点数N大于或等于序列长度M(即N≥M),才能无失真地恢复原时域信号。
2、思考题:
(20分)
1、预习思考题
(1)什么是内插公式?
在MATLAB中内插公式可用什么函数来编写?
答:
抽样信号
通过滤波器输出,其结果应为
与h(t)的卷积积分:
该式称为内插公式。
MATLAB中提供了
函数,可以很方便地使用内插公式。
(2)从频域抽样序列不失真地恢复离散时域信号的条件是什么?
答:
假定有限长序列x(n)的长度为M,频域抽样点数为N,原时域信号不失真地由频域抽样恢复的条件如下:
①如果x(n)不是有限长序列,则必然造成混叠现象,产生误差;
②如果x(n)是有限长序列,且频域抽样点数N小于序列长度M(即N中不能无失真地恢复出原信号x(n)。
③如果x(n)是有限长序列,且频域抽样点数N大于或等于序列长度M(即N≥M),则从
中能无失真地恢复出原信号x(n),即
2、①试归纳用IFFT数值计算方法从频谱恢复离散时间序列的方法和步骤。
答:
用IFFT数值计算方法从频谱恢复离散时间序列的方法:
依据频域抽样定理确定采样点数N必须大于或等于有限长序列x(n)的长度M,才能由频域抽样得到的频谱序列无失真地恢复原时间序列。
步骤:
(1).根据奈奎斯特定理确定采样频率Fs
(2).进而确定模拟域的分辨率(3).采样点数N取不同的值时,观察从频谱恢复离散时间序列的图形,取没有混叠现象的图形,就是从频谱恢复的离散时间序列。
②从频谱恢复连续时间信号与恢复离散时间序列有何不同?
答:
用频谱恢复连续时间信号只不过是将采样周期取得比用频谱恢复离散时间序列的采样周期更小得
后作IDFT,然后再用plot自动进行插值,就获得连续时间信号。
3、实验总结:
(10分)
通过本实验,要想无失真的恢复原信号,必须满足抽样定理,抽样频率Fs>Fh。
认识Matlab这个功能强大的仿真软件,初步了解了Matlab的操作界面以及简单的程序语言和程序运行方式,通过具体的取样和恢复信号的过程,更加深刻了解了采样定理的定义的具体含义:
将模拟信号转换成数字信号,即对连续信号进行等间隔采样形式采样,采样信号的频率是原连续信号的频谱以采样频率为周期的延拓形成的,通过MATLAB编程实现对抽样定理的验证,加深了抽样定理的理解。
同时自己训练应用计算机分析问题的能力。
如有侵权请联系告知删除,感谢你们的配合!