周期信号的合成与分解实验报告.docx
《周期信号的合成与分解实验报告.docx》由会员分享,可在线阅读,更多相关《周期信号的合成与分解实验报告.docx(14页珍藏版)》请在冰豆网上搜索。
周期信号的合成与分解实验报告
武汉大学教学实验报告
电子信息学院通信工程专业2017年9月14日
实验名称周期信号的合成与分解指导教师
姓名年级学号成绩
一、预习部分
1.实验目的
2.实验基本原理
3.主要仪器设备(含必要的元器件、工具)
一、实验目的
1.在理论学习的基础上,通过实验深刻领会周期信号傅里叶级数分解的物理意义。
2.理解实际应用中通常采用有限项级数来逼近无限项级数,此时方均误差随项数的增加而减小。
3.观察并初步了解Gibbs现象。
4.深入理解周期信号的频谱特点,比较不同周期信号频谱的差异。
二、实验基本原理
满足Dirichlet条件的周期信号f(t)可以分解成三角函数形式的傅里叶级数,表达式为:
式中n为正整数;角频率ω1由周期T1决定:
。
该式表明:
任何满足Dirichlet条件的周期信号都可以分解成直流分量及许多正弦、余弦分量。
这些正弦、余弦分量的频率必定是基频
的整数倍。
通常把频率为的分
量称为基波,频率为n
的分量成为n次谐波。
周期信号的频谱只会出现在0,ω1,2ω1,…,nω1,…等离散的频率点上,这种频谱称为离散谱,是周期信号频谱的主要特点。
f(t)波形变化越剧烈,所包含的高频分量的比重就越大;变化越平缓,所包含的低频分量的比重就越大。
一般来说,将周期信号分解得到的三角函数形式的傅里叶级数的项数是无限的。
也就是说,通常只有无穷项的傅里叶级数才能与原函数精确相等。
但在实际应用中,显然无法取至无穷多项,而只能采用有限项级数来逼近无穷项级数。
而且,所取项数越多,有限项级数就越逼近原函数,原函数与有限项级数间的方均误差就越小,而且低次谐波分量的系数不会因为所取项数的增加而变化。
当选取的傅里叶有限级数的项数越多,所合成的波形的峰起就越靠近f(t)的不连续点。
当所取得项数N很大时,该峰起值趋于一个常数,约等于总跳变值的9%,这种现象称为Gibbs现象。
三、需要掌握的MATLAB函数
结果的显示会用到plot和pause函数,请参考MATLAB帮助。
二、实验操作部分
1.实验数据、表格及数据处理
2.实验操作过程(可用图表示)
3.实验结论
四、实验内容
1.周期对称方波信号的合成
图示方波既是一个奇对称信号,又是一个奇谐信号。
根据函数的对称性与傅里叶系数的关系可知,它可以用无穷个奇次谐波分量的傅里叶级数来表示:
选取奇对称周期方波的周期T=0.02s,幅度E=6,请采用有限项级数替代无限项级数来逼近该函数。
分别取前1、10、50和200项有限级数来近似,编写程序并把结果显示在一幅图中,观察它们逼近方波的过程。
MATLAB程序如下:
%奇对称方波合成
t=0:
0.00001:
0.1;
sishu=12/pi;
y=sishu*sin(100*pi*t);
subplot(221)
plot(t,y);
axis([0,0.05,-4,4]);
xlabel('time');
ylabel('前1项有限级数');
y=0;
fori=1:
10
y=y+sishu*(sin((2*i-1)*100*pi*t)/(2*i-1));
end
subplot(222);
plot(t,y);
axis([0,0.05,-4,4]);
xlabel('time');
ylabel('前10项有限级数');
y=0;
fori=1:
50
y=y+sishu*(sin((2*i-1)*100*pi*t)/(2*i-1));
end
subplot(223);
plot(t,y);
axis([0,0.05,-4,4]);
xlabel('time');
ylabel('前50项有限级数');
y=0;
fori=1:
200
y=y+sishu*(sin((2*i-1)*100*pi*t)/(2*i-1));
end
subplot(224);
plot(t,y);
axis([0,0.05,-4,4]);
xlabel('time');
ylabel('前200项有限级数');
显示结果如图4-2所示:
图4-2奇对称方波信号的合成
2.观察Gibbs现象
分别取前5、7、10和20项有限级数来逼近奇对称方波,观察Gibbs现象。
MATLAB程序如下:
%观察Gibbs现象
t=0:
0.00001:
0.1;
y=0;
fori=1:
5
y=y+sishu*(sin((2*i-1)*100*pi*t)/(2*i-1));
end
subplot(221);
plot(t,y);
axis([0,0.05,-4,4]);
xlabel('time');
ylabel('前5项有限级数');
g=(max(y)-3)/6;
legend(sprintf('Gibbs:
%f',g));
y=0;
fori=1:
7
y=y+sishu*(sin((2*i-1)*100*pi*t)/(2*i-1));
end
subplot(222);
plot(t,y);
axis([0,0.05,-4,4]);
xlabel('time');
ylabel('前7项有限级数');
g=(max(y)-3)/6;
legend(sprintf('Gibbs:
%f',g));
y=0;
fori=1:
10
y=y+sishu*(sin((2*i-1)*100*pi*t)/(2*i-1));
end
subplot(223);
plot(t,y);
axis([0,0.05,-4,4]);
xlabel('time');
ylabel('前10项有限级数');
g=(max(y)-3)/6;
legend(sprintf('Gibbs:
%f',g));
y=0;
fori=1:
20
y=y+sishu*(sin((2*i-1)*100*pi*t)/(2*i-1));
end
subplot(224);
plot(t,y);
axis([0,0.05,-4,4]);
xlabel('time');
ylabel('前20项有限级数');
g=(max(y)-3)/6;
legend(sprintf('Gibbs:
%f',g));
显示结果如图4-3所示:
图4-3Gibbs现象
3.周期对称三角信号的合成
设计采用有限项级数逼近偶对称周期三角信号的实验,编制程序并显示结果。
4.周期信号的频谱
分析奇对称方波信号与偶对称三角信号的频谱,编制程序并显示结果,深入 讨论周期信号的频谱特点和两信号频谱的差异。
五、实验要求
1.输入实验内容1中提供的奇对称方波信号合成的MATLAB程序,生成M文件,编译并运行,观察合成结果。
2.输入实验内容2中提供的有限项级数逼近方波信号的MATLAB程序生成M文件,编译并运行,观察Gibbs现象。
3.自行编制完整的MATLAB程序,完成实验内容3中偶对称三角信号的合成。
在实验报告中给出程序和显示结果。
该信号的傅里叶级数表示为:
选取偶对称周期三角信号T=0.02s,幅度E=6,采用有限项级数替代无限项级数来逼近该函数。
分别取前1、5、10和100项有限级数来近似。
MATLAB程序如下:
%偶对称周期三角波
t=0:
0.001:
0.1;
sishu=24/pi^2;
y=3+sishu*cos(100*pi*t);
subplot(221)
plot(t,y);
axis([0,0.05,-1,7]);
xlabel('time');
ylabel('前1项有限级数');
y=0;
fori=1:
5
y=y+sishu*(sin(i*pi/2))^2*cos(i*100*pi*t)/i^2;
end
y=y+3;
subplot(222);
plot(t,y);
axis([0,0.05,-1,7]);
xlabel('time');
ylabel('前5项有限级数');
y=0;
fori=1:
10
y=y+sishu*(sin(i*pi/2))^2*cos(i*100*pi*t)/i^2;
end
y=y+3;
subplot(223);
plot(t,y);
axis([0,0.05,-1,7]);
xlabel('time');
ylabel('前10项有限级数');
y=0;
fori=1:
100
y=y+sishu*(sin(i*pi/2))^2*cos(i*100*pi*t)/i^2;
end
y=y+3;
subplot(224);
plot(t,y);
axis([0,0.05,-1,7]);
xlabel('time');
ylabel('前100项有限级数');
显示结果如图4-4所示:
图4-4偶对称三角波信号的合成
4.自行编制完整的MATLAB程序,完成实验内容4中奇对称方波信号和偶对称三角波信号的频谱分析。
在实验报告中给出程序和显示结果,讨论周期信号的频谱特点和两信号频谱的差异。
为了把奇对称方波信号和偶对称三角波信号的频谱做一个对比,修改图4-2中t的步长,MATLAB程序如下:
t=0:
0.001:
0.1;
y=0;
fori=1:
100
y=y+sishu*(sin((2*i-1)*100*pi*t)/(2*i-1));
end
subplot(224);
plot(t,y);
axis([0,0.05,-4,4]);
subplot(211);
plot(t,y);
xlabel('time');
ylabel('奇对称周期方波信号');
N=100;
X=fft(y,N);
f=1/0.1*(-N/2:
(N/2-1));
subplot(212);
stem(f,abs(fftshift(X)));
xlabel('Frequency(Hz)');
ylabel('magnitude')
结果显示如图4-5所示:
图4-5奇对称方波信号及其频谱图
%接图4-4程序:
subplot(211);
plot(t,y);
xlabel('time');
ylabel('偶对称周期三角波信号');
N=100;
X=fft(y,N);
f=1/0.1*(-N/2:
(N/2-1));
subplot(212);
stem(f,abs(fftshift(X)));
xlabel('Frequency(Hz)');
ylabel('magnitude');
显示结果如图4-6所示:
图4-6偶对称三角波信号及其频谱图
三、实验效果分析(包括仪器设备等使用效果)
六、实验结果分析
1.由图4-2和4-4可观察发现,采用傅里叶有限项级数替代无限项级数来逼近这两种函数时,随着有限级数的增加,所得到的波形越来越接近原函数波形。
2.图4-3展现了Gibbs现象,即当选取的傅里叶有限级数的项数越多,所合成的波形的峰起就越靠近f(t)的不连续点。
当所取得项数N很大时,该峰起值趋于一个常数,约等于总跳变值的9%。
3.由图4-5和图4-6,可总结出周期信号的频谱具有如下特点:
(1)离散性。
周期信号的频谱是由不连续的谱线组成,每条谱线代表一个谐波分量。
(2)谐波性。
频谱中每条谱线只出现在基波频率的整数倍上。
(3)收敛性。
各频率分量的谱线高度表示各次谐波分量的幅值或相位角。
两信号频谱的差异:
由以上周期性方波和三角波信号的频谱分析可知,周期性三角波信号的各次谐波幅值衰减比周期性方波的频谱衰减快得多,这说明三角波的频率结构中低频成分较多,而方波的高频成分比较多。
4.误差分析:
1)图形曲线不连续是因为matlab中作图时是取的有限的点,无法做到连续连线,故画出的图形曲线会出现间断或转折等情况。
2)所作出的图形不是完全标准的方波或三角波是因为我们是用有限项傅里叶级数去逼近的,无法到达用无穷项去逼近作图的效果。
七、思考题
1.利用有限项的指数形式的傅里叶级数重复奇对称方波信号的合成。
答:
其指数形式的傅里叶级数的表示为:
MATLAB程序如下:
t=0:
0.00001:
0.1;
sishu=6/pi;
y=0;
forn=1:
100
y=y+sishu*(exp(1i*(2*n-1)*100*pi*t-1i*0.5*pi)/(2*n-1));
end
plot(t,y);
axis([0,0.1,-4,4]);
xlabel('time');
2.分析时域信号的间断性与其频谱谐波收敛速率的对应关系。
答:
若时域信号间断点较多,则说明其高频分量较多,则谐波收敛速度会变慢。
四、教师评语
指导教师年月日