实验三信号抽样及信号重建.doc
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三 信号抽样及信号重建
一、实验目的
1、进一步理解信号的抽样及抽样定理;
2、进一步掌握抽样信号的频谱分析;
3、掌握和理解信号抽样以及信号重建的原理;
二、实验原理及方法
1、信号的抽样及抽样定理
抽样(Sampling ),就是从连续时间信号中抽取一系列的信号样本,从而,得到一个离散时间序列(Discrete-time sequence ),
图3-1给出了信号理想抽样的原理图:
上图中,假设连续时间信号是一个带限信号(Bandlimited Signal ),其频率范围为
m m ωω~-,抽样脉冲为理想单位冲激串(Unit Impulse Train ),其数学表达式为:
∑∞
∞--=)()(s nT t t p δ 3.1
由图可见,模拟信号x(t)经抽样后,得到已抽样信号(Sampled Signal )x s (t),且:
)()()(t p t x t x s = 3.2
将p(t)的数学表达式代入上式得到:
∑∞
∞
--=)()()(s s s nT t nT x t x δ 3.3
显然,已抽样信号x s (t) 也是一个冲激串,只是这个冲激串的冲激强度被x(nT s ) 加权了。 从频域上来看,p(t) 的频谱也是冲激序列,且为:
图3-1 (a) 抽样原理图,(b) 带限信号的频谱
(a)
(b)
∑∞
∞
--=)()}({s s n t p F ωωδω 3.4
根据傅里叶变换的频域卷积定理,时域两个信号相乘,对应的积的傅里叶变换等于这两个信号的傅里叶变换之间的卷积。所以,已抽样信号x s (t)的傅里叶变换为:
∑∞
-∞
=-=
n s
s
s n j X T j X ))((1
)(ω
ωω 3.5
表达式4.5告诉我们,如果信号x(t)的傅里叶变换为X(j ω),则已抽样信号x s (t) 的傅里叶变换X s (j ω)等于无穷多个加权的移位的X(j ω)之和,或者说,已抽样信号的频谱等于原连续时间信号的频谱以抽样频率ωs 为周期进行周期复制的结果。如图3-2所示:
3.6
在MA TLAB 中,对信号抽样的仿真,
例题 设连续时间信号为一个正弦信号 x(t) = cos(0.5πt),抽样周期为T s = 1/4秒,编程序绘制信号x(t)和已抽样信号x[n]的波形图。
范例程序3-1,Sampling 如下:
% Sampling clear, close all, t = 0:0.01:10;
Ts = 1/4; % Sampling period
n = 0:Ts:10; % Make the time variable to be discrete x = cos(0.5*pi*t);
xn = cos(0.5*pi*n); % Sampling subplot(221)
plot(t,x), title('A continuous-time signal x(t)'), xlabel('Time t') subplot(222)
stem(n,xn,'.'), title('The sampled version x[n] of x(t)'), xlabel('Time index n') 执行该程序后,得到的波形图如图3-3所示。
)
(ωj P ω
s
ωs ω-s
ωM
M 图3-2 信号抽样及其频谱图
图3-3 连续时间信号及其抽样后的离散时间序列
在这个范例程序中,先将连续时间t进行离散化,使之成为以Ts = 1/4秒的离散时间n,然后,将n代入到信号x(t) 的数学表达式中计算,就完成了抽样过程,且得到了抽样后的离散时间序列x[n]。
2、信号抽样过程中的频谱混叠
为了能够观察到已抽样信号的频谱是否会存在混叠现象,或者混叠程度有多么严重,有必要计算并绘制出已抽样信号的傅里叶变换。
根据式3.5可计算出已抽样信号的频谱。其中,主要利用了一个for循环程序完成周期延拓运算。Program3-2
% Program
clear, close all,
tmax = 4; dt = 0.01;
t = 0:dt:tmax;
Ts = 1/10;
ws = 2*pi/Ts;
w0 = 20*pi; dw = 0.1;
w = -w0:dw:w0;
n = 0:1:tmax/Ts;
x = exp(-4*t).*u(t);
xn = exp(-4*n*Ts);
subplot(221)
plot(t,x), title('A continuous-time signal x(t)'),
xlabel('Time t'), axis([0,tmax,0,1]), grid on
subplot(223)
stem(n,xn,'.'), title('The sampled version x[n] of x(t)'),
xlabel('Time index n'), axis([0,tmax/Ts,0,1]), grid on
Xa = x*exp(-j*t'*w)*dt;
X = 0;
for k = -8:8;
X = X + x*exp(-j*t'*(w-k*ws))*dt;
end
subplot(222)