《信号与系统》实验指导书 下载本文

ezplot(ft1,[-1.5 1.5]),grid on Fw1 = simplify(fourier(ft1)); subplot(322);

ezplot(abs(Fw1),[-10*pi 10*pi]), grid on axis([-10*pi 10*pi -0.2 2.2]);

ft2 = sym('Heaviside(t/2+1/2)-Heaviside(t/2-1/2)'); subplot(323);

ezplot(ft2,[-1.5 1.5]), grid on Fw2 = simplify(fourier(ft2)); subplot(324);

ezplot(abs(Fw2),[-10*pi 10*pi]),grid on axis([-10*pi 10*pi -0.2 2.2]);

ft3 = sym('Heaviside(2*t+1/2)-Heaviside(2*t-1/2)'); subplot(325);

ezplot(ft3,[-1.5 1.5]), grid on Fw3 = simplify(fourier(ft3)); subplot(326);

ezplot(abs(Fw3),[-10*pi 10*pi]),grid on axis([-10*pi 10*pi -0.2 2.2]);

2.2.2 频移特性

傅里叶变换的频移特性为:若f(t)?F(?),则有f(t)ej?0t?F(???0)。频 移技术在通信系统中得到广泛应用,诸如调幅变频等过程都是在频谱搬移的基础上完成的。频移的实现原理是将信号f(t)乘以载波信号cos?0t或sin?0t,从而完成频谱的搬移,即

1f(t)cos?0t?[F(???0)?F(???0)]2

jf(t)sin?0t?[F(???0)?F(???0)]2例6 阅读并运行如下程序段,并观察信号调制前后的频谱。

ft1 = sym('4*(Heaviside(t+1/4)-Heaviside(t-1/4))'); Fw1 = simplify(fourier(ft1)); subplot(121);

ezplot(abs(Fw1),[-24*pi 24*pi]),grid on axis([-24*pi 24*pi -0.2 2.2]); title('矩形信号频谱');

ft2 = sym('4*cos(2*pi*6*t)*(Heaviside(t+1/4)-Heaviside(t-1/4))');

22

Fw2 = simplify(fourier(ft2)); subplot(122);

ezplot(abs(Fw2),[-24*pi 24*pi]),grid on axis([-24*pi 24*pi -0.2 2.2]); title('矩形调制信号频谱');

3. 实验内容

3.1 试用MATLAB命令求下列信号的傅里叶变换,并绘出其幅度谱和相位谱。

sin2?(t?1)?sin(?t)?(1)f1(t)? (2)f2(t)? ???(t?1)??t?23.2 试用MATLAB命令求下列信号的傅里叶反变换,并绘出其时域信号图。 (1)F1(?)?2104 (2)F2(?)?e?4? ?3?j?5?j?3.3 试用MATLAB数值计算方法求门信号的傅里叶变换,并画出其频谱图。

??1,g(t)?门信号即????0,t??/2,其中??1。

t??/23.4 已知两个门信号的卷积为三角波信号,试用MATLAB命令验证傅里叶变换 的时域卷积定理。

4. 问题与思考

傅里叶变换的其他性质可以用类似的方法加以验证,试举一例,说明你验证过程的思路。

23

实验5 信号抽样及抽样定理

1. 实验目的

本实验是综合性实验,实验目的主要为:学会运用MATLAB完成信号抽样及对抽样信号的频谱进行分析;学会运用MATLAB改变抽样间隔,观察抽样后信号的频谱变化;学会运用MATLAB对抽样后的信号进行重建。进一步加深对信号采样和重建过程的理解。

2. 实验原理及实例分析

2.1 信号抽样

信号抽样是连续时间信号分析向离散时间信号、连续信号处理向数字信号处 理的第一步,广泛应用于实际的各类系统中。所谓信号抽样,也称为取样或采样,就是利用抽样脉冲序列p(t)从连续信号f(t)中抽取一系列的离散样值,通过抽样过程得到的离散样值信号称为抽样信号,用fs(t)表示。从数学上讲,抽样过程就是抽样脉冲p(t)和原连续信号f(t)相乘的过程,即:

fs(t)?f(t)p(t)

因此可以用傅里叶变换的频移卷积性质来求抽样信号fs(t)的频谱。常用的抽样脉冲序列p(t)有周期矩形脉冲序列和周期冲激脉冲序列。

);抽样脉冲p(t)是一个假设原连续信号f(t)的频谱为F(?),即f(t)?F(?周期信号,它的频谱为:

p(t)?n????Pen?jn?st?P(?)?2?n????P?(??n?)

ns?其中,?s?2?为抽样角频率,Ts为抽样间隔。因此,抽样信号fs(t)的频谱为: Ts

??1Fs(?)?F(?)P(?)??F(?)Pn?(??n?s)??PnF(??n?s)

2?n???n??? 24

上式表明,信号在时域被抽样后,它的频谱是原连续信号的频谱以抽样角频率为间隔周期的延拓,即信号在时域抽样或离散化,相当于频域周期化。在频谱的周期重复过程中,其频谱幅度受抽样脉冲序列的傅里叶加权,即被Pn加权。

假设抽样信号为周期冲激脉冲序列,即:

p(t)?n?????(t?nT)????(??n?)

sssn?????因此,冲激脉冲序列抽样后信号的频谱为:

1Fs(?)?Tsn????F(??n?)

s?可以看出,Fs(?)是以?s为周期等幅地重复。 例1 已知升余弦脉冲信号为f(t)?E?t[1?cos()],0?t??,E?1,???,参数 2?用MATLAB编程,实现该信号经冲激脉冲抽样后得到的抽样信号fs(t)及其频谱。 解:升余弦脉冲信号的频谱大部分集中在[0,2??]之间,当采用抽样间隔Ts?1时,

根据抽样定理,可以从抽样信号恢复出原信号。MATLAB源程序为: Ts = 1;

dt = 0.1; t1 = -4:dt:4; ft =

((1+cos(t1))/2).*(uCT(t1+pi)-uCT(t1-pi));

title('升余弦脉冲信号的频谱')

t2 = -4:Ts:4; fst =

((1+cos(t2))/2).*(uCT(t2+pi)-uCT(t2-pi));

subplot(221)

plot(t1,ft), grid on axis([-4 4 -0.1 1.1])

xlabel('Time(sec)'),ylabel('f(t)') title('升余弦脉冲信号') N=500; k = -N:N;

W = 2*pi*k/((2*N+1)*dt); Fw = dt*ft*exp(-j*t1'*W); subplot(222)

plot(W,abs(Fw)), grid on axis([-10 10 -0.2 1.1*pi])

xlabel('\\omega'),ylabel('F(w)')

subplot(223)

plot(t1,ft,':'),hold on stem(t2,fst),grid on axis([-4 4 -0.1 1.1])

xlabel('Time(sec)'),ylabel('fs(t)') title('抽样后的信号'),hold off Fsw = Ts*fst*exp(-j*t2'*W); subplot(224)

plot(W,abs(Fsw)), grid on axis([-10 10 -0.2 1.1*pi])

xlabel('\\omega'),ylabel('Fs(w)') title('抽样信号的频谱')

25