典型序列地频谱分析报告.docx
《典型序列地频谱分析报告.docx》由会员分享,可在线阅读,更多相关《典型序列地频谱分析报告.docx(18页珍藏版)》请在冰豆网上搜索。
![典型序列地频谱分析报告.docx](https://file1.bdocx.com/fileroot1/2023-2/21/603e72b9-fc77-4abf-a814-a5711ec503bf/603e72b9-fc77-4abf-a814-a5711ec503bf1.gif)
典型序列地频谱分析报告
天津城市建设学院
课程设计任务书
2012—2013学年第1学期
计算机与信息工程学院电子信息工程系电子信息科学与技术专业
课程设计名称:
数字信号处理
设计题目:
典型序列的频谱分析
完成期限:
自2012年12月17日至2012年12月28日共2周
设计依据、要求及主要内容:
一.课程设计依据
《数字信号处理》是电子信息类专业极其重要的一门专业基础课程,这门课程是将信号和系统抽象成离散的数学模型,并从数学分析的角度分别讨论信号、系统、信号经过系统、系统设计(主要是滤波器)等问题。
采用仿真可帮助学生加强理解,在掌握数字信号处理相关理论的基础上,根据数字信号处理课程所学知识,利用Matlab产生典型信号并进行频谱分析。
二.课程设计内容
1、对于三种典型序列------单位采样序列、实指数序列、矩形序列,要求:
(1)画出以上序列的时域波形图;
(2)求出以上序列的傅里叶变换;(3)画出以上序列的幅度谱及相位谱,并对相关结果予以理论分析;(4)对以上序列分别进行时移,画出时移后序列的频谱图,验证傅里叶变换的时移性质;(5)对以上序列的频谱分别进行频移,求出频移后频谱所对应的序列,并画出序列的时域波形图,验证傅里叶变换的频移性质。
2、自行设计一个周期序列,要求:
(1)画出周期序列的时域波形图;
(2)求周期序列的DFS,并画出幅度特性曲线;(3)求周期序列的FT,并画出幅频特性曲线;(4)比较DFS和FT的结果,从中可以得出什么结论。
三.课程设计要求
1.要求独立完成设计任务。
2.课程设计说明书封面格式要求见《天津城市建设学院课程设计教学工作规范》附表1
3.课程设计的说明书要求简洁、通顺,计算正确,图纸表达内容完整、清楚、规范。
4.测试要求:
根据题目的特点,编写Matlab程序,绘制结果图形,并从理论上进行分析。
5.课设说明书要求:
1)说明题目的设计原理和思路、采用方法及设计流程。
2)详细介绍运用的理论知识和主要的Matlab程序。
3)绘制结果图形并对仿真结果进行详细的分析。
指导教师(签字):
系/教研室主任(签字):
批准日期:
2012年12月13日
目录
目录
第一章设计任务及要求5
1.1课程设计任务5
1.2课程设计要求5
第二章设计原理6
2.1三种典型序列的频谱及程序6
2.1.1.三种典型序列6
2.1.2.典型序列生成程序6
2.1.3移位和频移7
2.2周期序列7
2.2.1周期延括原理7
2.2.2周期的DFS7
第三章设计实现9
3.1典型序列9
3.1.1.单位采样序列9
3.1.2实指数序列9
3.1.3矩形序列9
3.2时移和频移9
3.2.1时移9
3.2.2频移10
3.3周期序列10
第四章设计结果及分析11
4.1典型序列11
4.1.1运行结果11
第五章总结12
参考文献13
附录:
14
第一章设计任务及要求
1.1课程设计任务
1、对于三种典型序列------单位采样序列、实指数序列、矩形序列。
要求:
(1)画出以上序列的时域波形图;
(2)求出以上序列的傅里叶变换;
(3)画出以上序列的幅度谱及相位谱,并对相关结果予以理论分析;
(4)对以上序列分别进行时移,画出时移后序列的频谱图,验证傅里叶变换的时移性质;
(5)对以上序列的频谱分别进行频移,求出频移后频谱所对应的序列,并画出序列的时域波形图,验证傅里叶变换的频移性质。
2、自行设计一个周期序列。
要求:
(1)画出周期序列的时域波形图;
(2)求周期序列的DFS,并画出幅度特性曲线;
(3)求周期序列的FT,并画出幅频特性曲线;
(4)比较DFS和FT的结果,从中可以得出什么结论。
1.2课程设计要求
1.要求独立完成设计任务。
2.课程设计说明书封面格式要求见《天津城市建设学院课程设计教学工作规范》附表1
3.课程设计的说明书要求简洁、通顺,计算正确,图纸表达内容完整、清楚、规范。
4.测试要求:
根据题目的特点,编写Matlab程序,绘制结果图形,并从理论上进行分析。
5.课设说明书要求:
1)说明题目的设计原理和思路、采用方法及设计流程。
2)详细介绍运用的理论知识和主要的Matlab程序。
3)绘制结果图形并对仿真结果进行详细的分析。
第二章设计原理
2.1三种典型序列的频谱及程序
2.1.1.三种典型序列—单位采样序列、实指数序列、矩形序列公式表达
(1)单位采样序列公式表示:
单位采样序列也称为单位脉冲序列,特点是仅在n=0的时候取值为1,其他的均为0,
(2)实指数序列公式表示:
如果|a|<1,x(n)的幅度随n的增大而而减小,称其为收敛序列,反之称为发散序列。
(3)矩形序列公式表示:
式中的N成为矩形序列的长度。
2.1.2.典型序列生成程序
(1)单位采样序列:
n1=-3;n2=4;n0=0;
n=n1:
n2;
x=[n==n0];
stem(n,x,'filled');xlabel('时间(n)');ylabel('幅度x(n)');title('单位脉冲序列');
(2)实指数序列:
n=0:
10;a=0.5;
x=a.^n;
stem(n,x,'filled');
xlabel('时间(n)');ylabel('幅度x(n)');title('实指数序列');
(3)矩形序列:
n=1:
20
x=sign(sign(10-n)+1);
closeall;
stem(x);
xlabel('时间(n)');ylabel('幅度x(n)');title('矩形序列')
2.1.3移位和频移
1.移位:
在这个序列运算中,x[n]的每一个样本都移动(即延迟)k个采样周期,设移位后的序列为y(n)。
当k>0时每一个样本向右移动,称为x(n)的延时序列;当k<0时,每一个样本向左移动,称为x(n)的超前序列。
y(n)=x(n-k)
在MATLAB中,如果原始的序列用x和nx表示,移位后的序列用y和yn表示,移位运算并不影响向量x的值,因此y=x。
移位体现为位置向量的改变。
ny的每个元素都比nx加了一个k,即ny=nx+k。
y和ny就是移位后的向量的表述,说明y取k拍前的x值。
向左移位可令k取负号,意味着y取k拍后的x值。
在系统框图中用
进行标注,它被称为迟延算子,表示把输入序列右移一位;用z进行标注,它是左移运算是右移算子的逆运算。
实际上迟延算子取的是序列过去的值,具有物理可实现性;而左移算子是提前算子,它要知道序列未来的值,物理上无法实现。
所以数字信号处理中通常都用
算子。
2.频移:
若
,则
结论:
将信号
乘以因子
,对应于将频谱函数沿轴
右移
;将信号
乘以因子
,对应于将频谱函数沿轴
右移
。
2.2周期序列
2.2.1周期延括原理
(2.2)
则
称为周期序列。
满足上述关系的最小N称为基本周期。
用MATLAB把一个周期序列{x(n),0简单复制法:
设x是一个已赋值的行向量,其长度为N=length(x),把它复制K次,得到的xtide长度为K*N。
因此有,xtide=[X,X,……X];nxtide=0:
K:
N-1。
这个方法在K太大时容易数错,不是很好。
余函数mod法:
函数n1=(nmodN)。
这个算式把大于等于N的n值,减去N的整倍数,使余数n1在0与N-1之间。
对于小于等于0的n值,则加以N的整倍数。
也使n1在0与N-1之间。
把这一运算用到位置向量上,就可以方便的实现有限序列的周期延拓。
先设置位置向量,要复制K个x,则新向量的长度应为K*N。
其中N为x的长度,也就是所取的周期。
2.2.2周期的DFS
对周期信号
由DFS有
,
即
当
时,
,令
有
————DTFT
显然,
对
是以
为周期的。
将其与
表达式比较有:
,
于是:
当
时,
,
,
,
。
当k在一个周期范围内变化时,
在
范围内变化,所以积分区间是
。
表明:
离散时间序列可以分解为频率在
区间上连续分布的、幅度为
的复指数
分量的线性组合。
第三章设计实现
3.1典型序列
3.1.1.单位采样序列
n=1:
50;
x=zeros(1,50);x
(1)=1;closeall;subplot(3,1,1);stem(x);title('单位采样序列');
k=-25:
25;X=x*(exp(-j*pi/25)).^(n'*k);magX=abs(X);subplot(3,1,2);stem(magX);title('单位采样序列的幅度谱');
angX=angle(X);subplot(3,1,3);stem(angX);title('单位采样序列的相位谱')
3.1.2实指数序列
n=0:
20;a=1.2;x=a.^n;subplot(311);stem(n,x,'fill'),gridon;title('实指数序列')
k=-10:
10;X=x*(exp(-j*pi/10)).^(n'*k);magX=abs(X);subplot(312);stem(magX);title('实指数序列的幅度谱');
angX=angle(X);subplot(313);stem(angX);title('实指数序列的相位谱'))
3.1.3矩形序列
n1=-10;n2=10;n3=40;n0=0;n=n1:
n3;n4=0;x=[(n>=n0+n4)&(ncloseall;subplot(3,1,1);stem(n,x,'filled');title('矩形序列');
k=-20:
20;X=x*(exp(-j*pi/20)).^((n+n4)'*k);magX=abs(X);subplot(3,1,2);stem(magX);title('矩形序列的幅度谱');
angX=angle(X);subplot(3,1,3);stem(angX);title('矩形序列的相位谱')
angX=angle(X); subplot(3,1,3);stem(angX);title(‘矩形序列的相位谱’)
3.2时移和频移
3.2.1时移
1.单位采样序列的时移:
n=1:
50;x=zeros(1,50);t=10;x(t+1)=1;closeall;subplot(3,1,1);stem(x);title('单位采样序列的时移');
k=-25:
25;X=x*(exp(-j*pi/12.5)).^(n'*k);
magX=abs(X);subplot(3,1,2);stem(magX);title('单位采样序列时移的幅度谱');
angX=angle(X);subplot(3,1,3);stem(angX);title('单位采样序列时移的相位谱')
2.实指数序列的时移:
n=0:
20;
a=1.2;t=5;x=a.^(n-t);subplot(311);stem(n+t,x,'fill'),gridon;title('时移实指数序列')
k=-10:
10;X=x*(exp(-j*pi/10)).^((n+t)'*k);magX=abs(X);subplot(312);stem(magX);title('时移实指数序列的幅度谱');
angX=angle(X);subplot(313);stem(angX);title('时移实指数序列的相位谱')
3.时移的矩形序列
n1=-10;n2=10;n3=40;n0=0;n=n1:
n3;n4=10;x=[(n>=n0+n4)&(n20;X=x*(exp(-j*pi/20)).^((n+n4)'*k);magX=abs(X);subplot(3,1,2);stem(magX);title('时移矩形序列的幅度谱');
angX=angle(X);subplot(3,1,3);stem(angX);title('时移矩形序列的相位谱')
3.2.2频移
1.单位采样序列频移:
n=1:
50;x=zeros(1,50);x
(1)=1;w=pi*1;y=exp(j*w*n);z=x.*ycloseall;subplot(3,1,1);stem(z);
title('频移后单位采样序列');k=-25:
25;X=z*(exp(-j*pi/25)).^(n'*k);magX=abs(X);subplot(3,1,2);stem(magX);title('频移后单位采样序幅度谱');
angX=angle(X);subplot(3,1,3);stem(angX);title('频移后单位采样序列的相位谱')
2.实指数序列的频谱:
n=0:
20;a=1.2;x=a.^n;w=pi;y=exp(j*w*n);z=x.*y;subplot(311);stem(n,x,'fill'),gridon;title('频移后的实指数序列')k=-10:
10;X=z*(exp(-j*pi/10)).^(n'*k);magX=abs(X);subplot(312);stem(magX);title('频移后的实指数序列的幅度谱');angX=angle(X);subplot(313);stem(angX);title('频移后的实指数序列的相位谱')
3.矩形序列的频移:
n1=-10;n2=10;n3=40;n0=0;n=n1:
n3;n4=0;x=[(n>=n0+n4)&(ny=exp(j*w*n);z=x.*y;closeall;subplot(3,1,1);stem(n,x,'filled');title('频移后的矩形序列');
k=-20:
20;X=z*(exp(-j*pi/20)).^((n+n4)'*k);magX=abs(X);subplot(3,1,2);stem(magX);title('频移后的矩形序列的幅度谱');angX=angle(X);subplot(3,1,3);stem(angX);title('频移后的矩形序列的相位谱')
3.3周期序列
离散时间信号频域具有周期性,但是在却是连续的频谱;我们仍希望能够让频域也离散,那么只有使这些离散的时间序列进行周期性拓展,成为周期离散信号的DTFT(当拓展无穷个周期,就是DFS),以获取离散的频谱。
使用matlab编程为:
N=16;
xn=[ones(1,N/4),zeros(1,3*N/4)];
xn=[xn,xn,xn];n=0:
3*N-1;k=0:
3*N-1;
Xk=xn*exp(-j*2*pi/N).^(n'*k);
subplot(311),stem(n,xn);title('周期序列x(n)');
axis([-1,3*N,1.1*min(xn),1.1*max(xn)]);
subplot(312),stem(k,abs(Xk));title('|X(k)|');%显示序列幅度谱
axis([-1,3*N,1.1*min(abs(Xk)),1.1*max(abs(Xk))]);
subplot(313),stem(k,angle(Xk));title('arg|X(k)|');%显示序列相位谱
axis([-1,3*N,1.1*min(angle(Xk)),1.1*max(angle(Xk))]);
第四章设计结果及分析
4.1典型序列
4.1.1运行结果
第五章总结
总结:
数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。
典型序列是对连续信号进行等间隔采样得到的,学习典型序列的知识对后来对离散信号学习有重要意义,对典型序列的频谱分析有助于今后对采样定理,DFS和FT的理解。
从课题中心来看,课题“典型序列的频谱分析”是希望通过此次课程设计加深对典型序列的理解,同时学会运用数字信号处理的知识和MATLAB对信号进行频谱分析,这就要求我们对频域域采样定理的理解要透彻,同时要求对DFS和FT的原理有更透彻的理解。
明白DFS和FT的区别与联系,并学会运用DFS和FT对序列进行频谱分析。
本课题的特色在于要很好的掌握理论知识,要学会用MATLAB解决本次课程设计的问题,熟悉的掌握典型序列的特性,把数字信号处理的知识学以至用,运用理论对典型序列的频谱加以分析,这就是把理论运用到实践中来。
在实际操作中也遇到很多问题,最终通过询问老师和同学把问题一一解决了,同时也阅读了很多图书和文献,并学会了如何撰写课程设计。
通过这次课程设计,我学会了很多东西,总之这次课程设计最大的收益这还是自己。
参考文献
[1]高西全.丁玉美..数字信号处理.西安电子科技大学出版社,2008,第3版
[2]刘泉.阙大顺.数字信号处理原理与实现.电子工业出版社,2005
[3]赵之劲.刘顺兰.数字信号处理实验.浙江大学出版社,2007
[4]张威.MATLAB基础与编程入门.西安电子科技大学出版社,2006
[5]陈怀探.数字信号处理教程—MATALAB释义与实现.电子工业出版社,2005
附录:
主要程序:
n=1:
50;%定义序列的长度是50
x=zeros(1,50);%注意:
MATLAB中数组下标从1开始
x
(1)=1;
closeall;
subplot(3,1,1);stem(x);title('单位采样序列');
k=-25:
25;
X=x*(exp(-j*pi/25)).^(n'*k);
magX=abs(X);%绘制x(n)的幅度谱
subplot(3,1,2);stem(magX);title('单位采样序列的幅度谱');
angX=angle(X);%绘制x(n)的相位谱
subplot(3,1,3);stem(angX);title('单位采样序列的相位谱')
n=1:
50;%定义序列的长度是50
x=zeros(1,50);%注意:
MATLAB中数组下标从1开始
t=10;
x(t+1)=1;
closeall;
subplot(3,1,1);stem(x);title('单位采样序列的时移');
k=-25:
25;
X=x*(exp(-j*pi/12.5)).^(n'*k);
magX=abs(X);%绘制x(n)的幅度谱
subplot(3,1,2);stem(magX);title('单位采样序列时移的幅度谱');
angX=angle(X);%绘制x(n)的相位谱
subplot(3,1,3);stem(angX);title('单位采样序列时移的相位谱')
x=zeros(1,50);%注意:
MATLAB中数组下标从1开始
x
(1)=1;
w=pi*1;
y=exp(j*w*n);
z=x.*y
closeall;
subplot(3,1,1);stem(z);title('频移后单位采样序列');
k=-25:
25;
X=z*(exp(-j*pi/25)).^(n'*k);
magX=abs(X);%绘制x(n)的幅度谱
subplot(3,1,2);stem(magX);title('频移后单位采样序列的幅度谱');
angX=angle(X);%绘制x(n)的相位谱
subplot(3,1,3);stem(angX);title('频移后单位采样序列的相位谱')
N=16;
xn=[ones(1,N/4),zeros(1,3*N/4)];
xn=[xn,xn,xn];
n=0:
3*N-1;
k=0:
3*N-1;
Xk=xn*exp(-j*2*pi/N).^(n'*k);
subplot(311),stem(n,xn);title('周期序列x(n)');
axis([-1,3*N,1.1*min(xn),1.1*max(xn)]);
subplot(312),stem(k,abs(Xk));title('|X(k)|');%显示序列幅度谱
axis([-1,3*N,1.1*min(abs(Xk)),1.1*max(abs(Xk))]);
subplot(313),stem(k,angle(Xk));title('arg|X(k)|');%显示序列相位谱
axis([-1,3*N,1.1*min(angle(Xk)),1.1*max(angle(Xk))]);