信号与系统实验二
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信号与系统实验二
信号与系统
实验报告
实验二
实验名称:连续时间信号的频域分析指导老师:苏永新
班级:09通信工程1班
学号:2009963924
姓名:王维
实验二连续时间信号的频域分析
一、实验目的
1、掌握连续时间周期信号的傅里叶级数的物理意义和分析方法;
2、观察截短傅里叶级数而产生的“Gibbs 现象”,了解其特点以及产生的原因;
3、掌握连续时间傅里叶变换的分析方法及其物理意义;
4、掌握各种典型的连续时间非周期信号的频谱特征以及傅里叶变换的主要性质;
5、学习掌握利用MATLAB语言编写计算CTFS、CTFT和DTFT的仿真程序,并能利用这些程序对一些典型信号进行频谱分析,验证CTFT、DTFT的若干重要性质。
基本要求:掌握并深刻理傅里叶变换的物理意义,掌握信号的傅里叶变换的计算方法,掌握利用MATLAB编程完成相关的傅里叶变换的计算。
二、实验原理及方法
1、连续时间周期信号的傅里叶级数CTFS分析
任何一个周期为T1的正弦周期信号,只要满足狄利克利条件,就可以展开成傅里叶级数。
其中三角傅里叶级数为:
∑∞
=++=1000)]
sin()cos([)(k k k t k b t k a a t x ωω
2.1 或:
∑∞
=++=1
00)
cos()(k k k t k c a t x ϕω
2.2 其中1
2T πω
=
,称为信号的基本频率(Fundamental
frequency ),k
k
b a a ,和,0
分别是信号)(t x 的直流分量、余弦分量幅度和正弦分量幅度,k
k
c ϕ、为合并同频
率项之后各正弦谐波分量的幅度和初相位,它们都是频率0
ωk 的函数,绘制出它们与0
ωk 之间的图
像,称为信号的频谱图(简称“频谱”),k
c -0
ωk 图
像为幅度谱,k
ϕ-0
ωk 图像为相位谱。
三角形式傅里叶级数表明,如果一个周期信号x(t),满足狄里克利条件,那么,它就可以被看作是由很多不同频率的互为谐波关系(harmonically related )的正弦信号所组成,其中每一个不同频率的正弦信号称为正弦谐波分
量 (Sinusoid component),其幅度(amplitude )为k
c 。
也可以反过来理解三角傅里叶级数:用无
限多个正弦谐波分量可以合成一个任意的非正弦周期信号。
指数形式的傅里叶级数为:
∑∞
-∞
==
k t
jk k
e
a t x 0)(ω
2.3
其中,k
a 为指数形式的傅里叶级数的系数,按如
下公式计算: ⎰
--=
2
/2
/1
110)(1
T T t
jk k dt e t x T a ω
2.4
指数形式的傅里叶级数告诉我们,如果一个周期信号x(t),满足狄里克利条件,那么,它就可以被看作是由很多不同频率的互为谐波关系(harmonically related )的周期复指数信号所组成,其中每一个不同频率的周期复指数信号称为基本频率分量,其复幅度(complex amplitude )为k
a 。
这里“复幅度(complex amplitude )”指
的是k
a 通常是复数。
上面的傅里叶级数的合成式说明,我们可以
用无穷多个不同频率的周期复指数信号来合成任意一个周期信号。
然而,用计算机(或任何其它设备)合成一个周期信号,显然不可能做到用无限多个谐波来合成,只能取这些有限个谐波分量来近似合成。
假设谐波项数为N ,则上面的和成式为:
∑-==
N
N k t
jk k
e
a t x 0)(ω
2.5
显然,N 越大,所选项数越多,有限项级数合成的结果越逼近原信号x(t)。
本实验可以比较直观地了解傅里叶级数的物理意义,并观察到级数中各频率分量对波形的影响包括“Gibbs ”现象:即信号在不连续点附近存在一个幅度大约为9%的过冲,且所选谐波次数越多,过冲点越向不连续点靠近。
这一现象在观察周期矩形波信号和周期锯齿波信号时可以看得很清楚。
三、实验内容和要求
实验前,必须首先阅读本实验原理,读懂所给出的全部范例程序。
实验开始时,先在计算机上运行这些范例程序,观察所得到的信号的波形
图。
并结合范例程序应该完成的工作,进一步分析程序中各个语句的作用,从而真正理解这些程序。
实验前,一定要针对下面的实验项目做好相应的实验准备工作,包括事先编写好相应的实验程序等事项。
Q2-1
编写程序Q2_1,绘制下面的信号的波形图:
-+-=)5cos(51)3cos(31)cos()(000t t t t x ωωω∑∞
==10)
cos()2sin(1n t n n n
ωπ
其中,ω0 = 0.5π,要求将一个图形窗口分割成四个子图,分别绘制cos(ω0t)、cos(3ω0t)、cos(5ω0t) 和x(t) 的波形图,给图形加title ,网格线和x 坐标标签,并且程序能够接受从键盘输入的和式中的项数。
抄写程序
Q2_1如下:
clear, close all
dt = 0.00001; t = -2:dt:4; w0=0.5*pi;
x1=cos(w0.*t);
x2=cos(3*w0.*t);
x3=cos(5*w0.*t);
N=input ( 'Type in the number of the harmonic components N =');
x=0;
for q=1:N;
x=x+(sin(q*(pi/2)).*cos(q*w0*t))/q;
end
subplot(221),
plot(t,x1)
axis([-2 4 -2 2]);
grid on,
title('signal cos(w0.*t)'),
subplot(222),
plot(t,x2)
axis([-2 4 -2 2]);
grid on
title('signal cos(3*w0.*t))'),
subplot(223)
plot(t,x3)
axis([-2 4 -2 2]);
grid on
title('signal cos(5*w0.*t))'), xlabel ('time t (sec)') subplot(224) plot(t,x) axis([-2 4 -2 2]); grid on
title('signal x(t)'), xlabel ('time t (sec)')
执行程序
Q2_1所得到的图形如下:
Q2-2 给程序Program2_1增加适当的语句,并以Q2_2存盘,使之能够计算例题2-1中的周期方波信号的傅里叶级数的系数,并绘制出信号的幅度谱和相位谱的谱线图。
signal cos(w0.*t)
signal cos(3*w0.*t))
signal cos(5*w0.*t))
time t (sec)
signal x(t)
time t (sec)
通过增加适当的语句修改Program2_1而成的程序Q2_2抄写如下:
clear,close all
T = 2; dt = 0.00001; t = -2:dt:2;
x1 = u(t+0.2)-u(t-0.2-1-dt); x = 0;
for m = -1:1
x = x + u(t+0.2-m*T) - u(t-0.2-1-m*T-dt);
end
w0 = 2*pi/T;
N = 10;
L = 2*N+1;
for k = -N:1:N;
ak(N+1+k) = (1/T)*x1*exp(-j*k*w0*t')*dt;
end
phi = angle(ak);
y=0; for q = 1:L;
y = y+ak(q)*exp(j*(-(L-1)/2+q-1)*2*pi*t/T);
end;
subplot(221),
plot(t,x), title('The original signal x(t)'),
axis([-2,2,-0.2,1.2]),
subplot(223),
plot(t,y), title('The synthesis signal y(t)'),
axis([-2,2,-0.2,1.2]), xlabel('Time t'),
subplot(222)
k=-N:N; stem(k,abs(ak),'k.'), title('The amplitude |ak| of x(t)'), axis([-N,N,-0.1,0.6])
subplot(224)
stem(k,phi,'r.'), title('The phase phi(k) of x(t)'), axis([-N,N,-2,2]), xlabel('Index k')
执行程序Q2_2得到的图形
Q2-3 反复执行程序Program2_2,每次执行该程序时,输入不同的N 值,并观察所合成的周期方波信号。
通过观察,你了解的吉伯斯现象的特点是:
N=30
N=100
The original signal x(t)
The synthesis signal y(t)
Time t
The amplitude |ak| of x(t)
The phase phi(k) of x(t)
Index k
-2
-1
1
2
The original signal x(t)
The synthesis signal y(t)
Time t
-20
20
The amplitude |ak| of x(t)
The phase phi(k) of x(t)
Index k
吉伯斯现象的特点是:
随着N 增加,部分和的起伏就向不连续点压缩,
但是对任何有限的N 值,起伏的峰值大小保持不变, 一个周期信号在一个周期有内断点存在,那么,引入的误差将除了产生纹波之外,还将在断点处产生幅度大约为9%的过冲
1、周期信号的傅里叶级数与GIBBS 现象
给定如下两个周期信号:
Q2-4 分别手工计算x 1(t) 和x 2(t) 的傅里叶级数
的系数。
00.5
1
The original signal x(t)
00.5
1
The synthesis signal y(t)
Time t
The amplitude |ak| of x(t)
The phase phi(k) of x(t)
Index k
t
1
1
-1
2
2-)
(1t x )
(2t x t
2
2
-1
2
.02
.0-
信号
x 1(t) 在其主周期内的数学表达式为:
计算x 1(t)
的傅里叶级数的系数的计算过程如下:
⎰+=
2
)(10a t t
dt
t x
⎰+=T t t
n dt t nw t x T
a )cos()(/21
1
⎰+=T
t t
n dt t nw t x T
b )sin()(/21
1
064a 5494
4/a 1/2a 2
242
232
2210====
==n b a a ππππ
计算得到的x 1(t)的傅里叶级数的系数的数学表达式是:])cos(25
1
)cos(91)[cos(42121
++++=
t t t x
ππππ 信号
x 2(t) 在其主周期内的数学表达式为:
)2.0(u 2.0((x 2
--+=t t u t )) 计算
x 2(t) 的傅里叶级数的系数的计算过程如下
⎰+=
2
)(20a t t
dt
t x
:
⎰+=T
t t
n dt t nw t x T
a )cos()(/22
2
⎰+=T
t t
n dt t nw t x T
b )sin()(/22
2
通过计算得到的x 1(t)的傅里叶级数的系数的数学
表达式是:t
j e Sa x ππτ)2
n 212(∑∞∞-=
用
MATLAB 帮助你计算出你手工计算的傅里叶
级数的系数ak 从-10到10共21个系数。
Q2-5
仿照程序Program2_1,编写程序Q2_5,以
计算x 1(t)的傅里叶级数的系数。
程序Q2_5如下:
clear, close all T = 2; dt = 0.00001; t = -2:dt:2;
x1 = u(t+0.2) - u(t-0.2-dt); >> x=0; >> for m=-1:1
x=x+u(t-m*T)-u(t-1-m*T-dt);
end
>> w0=2*pi*T;
>> N=10;
>> L=2*N+1;
>> for k=-N:N;
ak(N+1+k)=(1/T)*x1*exp(-j*k*w0*t')*dt;
end
>> phi=angle(ak);
>> ak
执行程序Q2_5所得到的x1(t)的傅里
叶级数的ak从-10到10共21个系数
如下:
ak =
Columns 1 through 3
0.0000 + 0.0000i -0.0052 - 0.0000i 0.0095 + 0.0000i
Columns 4 through 6
-0.0108 - 0.0000i 0.0078 + 0.0000i 0.0000 + 0.0000i
Columns 7 through 9
-0.0117 - 0.0000i 0.0252 + 0.0000i -0.0378
- 0.0000i
Columns 10 through 12
0.0468 + 0.0000i 0.2000 0.0468 - 0.0000i
Columns 13 through 15
-0.0378 + 0.0000i 0.0252 - 0.0000i -0.0117 + 0.0000i
Columns 16 through 18
0.0000 - 0.0000i 0.0078 - 0.0000i -0.0108 + 0.0000i
Columns 19 through 21
0.0095 - 0.0000i -0.0052 + 0.0000i 0.0000 - 0.0000i
Q2-6仿照程序Program2_1,编写程序Q2_6,以计算x2(t) 的傅里叶级数的系数(不绘图)。
程序Q2_6如下:
clear, close all
T = 2; dt = 0.00001; t = -2:dt:2;
x1 = u(t) - u(t-1-dt); x = 0;
for m = -1:1
x = x + u(t-m*T) - u(t-1-m*T-dt);
end
w0 = 2*pi/T;
N = 10;
L = 2*N+1;
for k = -N: N;
ak(N+1+k) = (1/T)*x1*exp(-j*k*w0*t')*dt;
end
phi = angle (ak);
执行程序Q2_6所得到的x2(t)的傅里叶级数的ak 从-10到10共21个系数如下:
ak =
Columns 1 through 4
0.0000 + 0.0000i 0.0000 + 0.0354i 0.0000 - 0.0000i 0.0000 + 0.0455i
Columns 5 through 8
0.0000 - 0.0000i 0.0000 + 0.0637i 0.0000 - 0.0000i 0.0000 + 0.1061i
Columns 9 through 12
0.0000 - 0.0000i 0.0000 + 0.3183i 0.5000 0.0000 - 0.3183i
Columns 13 through 16
0.0000 + 0.0000i 0.0000 - 0.1061i 0.0000 + 0.0000i 0.0000 - 0.0637i
Columns 17 through 20
0.0000 + 0.0000i 0.0000 - 0.0455i 0.0000 + 0.0000i 0.0000 - 0.0354i
Column 21
0.0000 - 0.0000i
与你手工计算的ak相比较,是否相同,如有不同,是何原因造成的?
答:与手工相同。
Q2-8利用单位阶跃信号u(t),将x1(t) 表示成一个数学闭式表达式,并手工绘制x1(t) 和x2(t) 的时域波形图。
信号x1(t) 的闭式数学表达式为:
x1(t) = t+2(u(t+2)-u(t+1))+(u(t+1)-u(t-1))+2-t(u(t-1)-u(t-2))
手工绘制的x1(t)的时域波形图手工绘制的x2(t)的时域波形图
Q2-10编写MATLAB程序Q2_10,能够接受从键盘输入的时域信号表达式,计算并绘制出信号的时域波形、幅度谱。
程序Q2_10抄写如下
clear,close all
T=0.01; dw=0.1;
t=-10:T:10;
w=-4*pi:dw:4*pi;
x=input('peleas input a signal,I will draw its plot for you.Signal x='); X=x*exp(-j*t'*w)*T;
X1=abs(X);
phai=angle(X);
subplot(211)
t=-10:T:10;
plot(t,x)%Plot X
axis([-3 3 -0.2 1.2]);
grid on,
title('The signal X(t)');
xlabel('Time t(sec)');
w=-4*pi:dw:4*pi;
subplot(212);
plot(w,X1)%Plot X;
axis([-4*pi4*pi-0.1 3]);
grid on;
title('The amplitude spectrum of X(t)');
xlabel('Frequency index w');
执行程序Q2_10,输入信号x1(t)的数学表达式,得到的信号时域波形、幅度谱和相位谱如下:
The signal X(t)
Time t(sec)
The amplitude spectrum of X(t)
Frequency index w
执行程序Q2_10,输入信号x2(t)的数学表达式,得到的信号时域波形、幅度谱和相位谱如下:
Q2-17:回答如下问题:
1、 从信号分解的角度,谈谈你对周期信号的傅
里叶级数的理解。
答:任何一个周期为T 1的正弦周期信号,只要满足狄利克利雷条件,就可以展
开成傅里叶级数。
指数形式的傅里叶级数为:
∑∞
-∞==k t jk k e a t x 0)(ω
其中,k a 为指数形式的傅里叶级数的系数,按如下公式计算: ⎰--=2/2/1110)(1T T t jk k dt e t x T a ω
指数形式的傅里叶级数告诉我们,如果一个周期信号x(t),满足狄里克利条件,那么,它就可以被看作是由很多不同频率的互为谐波关系(harmonically related )的周期复指数信号所组成,其中每一个不同频率的周期复指数信号称为基本频率分量,其复幅度(complex amplitude )为k a 。
这里“复幅度(complex amplitude )”指的是k
a 通常是复数。
上面的傅里叶级数的合成式说明,我们可以用无穷多个不同频率的周期复指数信号来合成任意一个周期信号。
The signal X (t)
Time t(sec)The amplitude spectrum of X (t)Frequency index w
2、从信号分解的角度,谈谈你对傅里叶变换及其物理意义的理解,谈谈你对信号频谱概念的理解。
答:连续时间傅里叶变换主要用来描述连续时间非周期信号的频谱。
任意非周期信号,如果满足狄里克利条件,那么,它可以被看作是由无穷多个不同频率(这些频率都是非常的接近)的周期复指数信号e j ωt 的线性组合构成的,每个频率所对应的周期复指数信号e j ωt 称为频率分量,其相对幅度为对应频率的|X(j ω)|之值,其相位为对应频率的X(j ω)的相位。
傅里叶变换在信号分析中具有非常重要的意义,它主要是用来进行信号的频谱分析的。
傅里叶变换和其逆变换定义如下:
⎰∞
∞--=
dt e t x j X t j ωω)()( ⎰∞∞-=ωωπωd e j X t x t j )(21)(
四、实验总结
通过第二次的上机操作实验,让我们更加熟悉并灵活运用MATAB 软件书写简单c 程序并加以运行,结合显示图形特点分析更加加深连续时间信号的傅里叶级数的分析方法和物理意义。
通过连续时间周期信号的傅里叶级数CTFS 分析,以及观察截短傅里叶级数而产生的“吉布斯现象”,通过学习利用MATLAB 语言编写计算CTFS 、CTFT 和DTFT 的仿真程序,并利用这些程序对一些典型信号进行频谱分析,验证CTFT 、DTFT 的若干重要性质。
通过程序图形仿真,加深对理论知识的掌握。
实践和理论相结合,更加凸显软件工具在理论分析中的作用!。