非周期信号的频谱分析

非周期信号的频谱分析
非周期信号的频谱分析

非周期信号的频谱分析

一、实验目的

1)掌握用MATLAB 编程,分析门信号的频谱;

2)掌握用MATLAB 编程,分析冲击信号的频谱;

3)掌握用MATLAB 编程,分析直流信号的频谱;

4)掌握用MATLAB 编程,分析阶跃信号的频谱;

5)掌握用MATLAB 编程,分析单边信号的频谱;

二、实验原理

常见的非周期信号有:

1、门信号门信号的傅里叶变换对为:

12sin()22()()202t g t F j Sa t ττωτωτωττω?

=? ???

?>??它的幅度频谱和相位频谱分别为 ()2F j Sa ωτωτ??= ???

0sin()02()sin(02

ωτ?ωωτπ?>??=??

冲激信号的傅里叶变换对为()1

t δ?3、直流信号

直流信号的傅里叶变换为

12()

πδω?4、阶跃信号阶跃信号的傅里叶变换为

111()sgn()()22u t t j πδωω

=+?+5、单边指数信号单边指数信号的傅里叶变换对为

01()00

at

e t

f t j t αω-?≥=??+

()F j ω=()arctan(a ω?ω=-

三、涉及的MATLAB函数

1、fourier函数

2、ifourier函数

四、实验内容与方法

1、验证性试验

1)门信号的傅里叶变换

MATLAB程序:

Clear all;

syms t w

ut=sym('heaviside(t+0.5)-heaviside(t-0.5)');

subplot(2,1,1);

ezplot(ut)

hold on

axis([-1 1 0 1.1]);

plot([-0.5 -0.5],[0,1]);

plot([0.5 0.5],[0,1]);

Fw=fourier(ut,t,w);

FFP=abs(Fw);

subplot(2,1,2);

ezplot(FFP,[-10*pi 10*pi]);

axis([-10*pi 10*pi 0 1.1]);

程序运行结果图

2)冲激信号的傅里叶变换

MATLAB程序:

clear all

syms t w

ut1=sym('heaviside(t+0.5)-heaviside(t-0.5)');

subplot(2,1,1);

ezplot(ut1);

title('脉宽为1的矩形脉冲信号')

xlabel('t')

hold on

axis([-1 1 0 1.1]);

plot([-0.5 -0.5],[0 1]);

plot([0.5 0.5],[0 1]);

Fw=fourier(ut1,t,w);

FFw=abs(Fw);

subplot(2,1,2);

ezplot(FFw,[-10*pi 10*pi]);

axis([-10*pi 10*pi 0 1.1]);

title('脉宽为1的矩形脉冲信号的幅度频谱')

hold on

pause

ut2=10*sym('heaviside(t+0.05)-heaviside(t-0.05)'); subplot(2,1,1);

ezplot(ut2);

title('脉宽为1、0.1矩形脉冲信号')

xlabel('t')

hold on

axis([-1 1 0 11]);

plot([-0.05 -0.05],[0 10]);

plot([0.05 0.05],[0 10]);

Fw2=fourier(ut2,t,w);

FFw2=abs(Fw2);

subplot(2,1,2);

ezplot(FFw2,[-10*pi 10*pi]);

axis([-10*pi 10*pi 0 1.1]);

title('脉宽为1、0.1的矩形脉冲信号的幅度频谱')

hold on

pause

ut3=100*sym('heaviside(t+0.005)-heaviside(t-0.005)'); subplot(2,1,1);

ezplot(ut3);

title('脉宽为1、0.1和0.01矩形脉冲信号')

xlabel('t')

hold on

axis([-1 1 0 110]);

plot([-0.005 -0.005],[0 100]);

plot([0.005 0.005],[0 100]);

Fw3=fourier(ut3,t,w);

FFw3=abs(Fw3);

subplot(2,1,2);

ezplot(FFw3,[-10*pi 10*pi]);

axis([-10*pi 10*pi 0 1.1]);

title('脉宽为1、0.1和0.01的矩形脉冲信号的幅度频谱') hold on

pause

程序运行结果图

3)直流信号的傅里叶变换

MATLAB程序:

clear all;

display('Please input the value of a')

a=input('a=');

syms t

f=exp(-a*abs(t));

subplot(1,2,1)

ezplot(f);

axis([-2*pi 2*pi 0 1]);

ylabel('时域波形');

F=fourier(f);

subplot(1,2,2)

ezplot(abs(F));

axis([-3 3 0 2/a])

程序运行结果图

a=0.1时:

a=0.01时:

a=0.001时:

a=0.0001时:

4)阶跃信号的傅里叶变换

MATLAB程序:

clear all

syms w;

xw=1/(j*w);

ezplot(abs(imag(xw)));

axis([-3 3 -1.5*pi 1.5*pi]);

hold on

y=0:0.01:pi;

plot(0,y);

hold on

y=-pi:pi;

plot(0,y);

hold on

title('阶跃信号频谱');

xlabel('\omega');

axis([-pi pi -6 6]);

x=-pi:0.001:pi;

plot(x,0)

hold on

y=-6:0.01:6;

plot(0,y);

hold on

程序运行结果图

5)单边指数信号的傅里叶变换MATLAB程序:

clear all

syms t v w phase im re

f=exp(-2*t)*sym('heaviside(t)'); Fw=fourier(f);

subplot(3,1,1);

ezplot(f);

axis([-1 2.5 0 1.1]);

xlabel('时域波形');

subplot(3,1,2)

ezplot(abs(Fw));

xlabel('幅度频谱');

im=imag(Fw);

re=real(Fw);

phase=atan(im/re);

subplot(3,1,3);

ezplot(phase);

xlabel('相位频谱');

程序运行结果图

2、程序设计实验

确定下列信号的傅里叶变换的数学表达式

1)的傅里叶变换

2()()1t f t e U t -=+1()2()2

F j j ωπδωω=+

+MATLAB 程序:

clear all

syms t v w phase im re

f=exp(-2*t)*sym('heaviside(t)')+1;

Fw=fourier(f);

Fw=simple(Fw);

subplot(3,1,1);

ezplot(f);

axis([-1 2.5 0 1.1]);

xlabel('时域波形');

subplot(3,1,2)

ezplot(abs(Fw));

im=imag(Fw);

re=real(Fw);

xlabel('幅度频谱');

phase=atan(im/re);

subplot(3,1,3);

ezplot(phase);

xlabel('相位频谱');程序运行结果图

2)的傅里叶变换

2()(1)()t f t e U t G t -=-+12sin ()1j e F j j ωωωωω

--=++MATLAB 程序:

clear all

syms t v w phase im re

f=exp(-1*t)*sym('heaviside(t-1)')+heaviside(t+1)-heaviside(t-1);

Fw=fourier(f);

Fw=simple(Fw);

subplot(3,1,1);

ezplot(f);

axis([-2.5 2.5 0 1.1]);

xlabel('时域波形');

subplot(3,1,2)

ezplot(abs(Fw));

im=imag(Fw);

re=real(Fw);

xlabel('幅度频谱');

phase=atan(im/re);

subplot(3,1,3);

ezplot(phase);

xlabel('相位频谱');

程序运行结果图

3)的傅里叶变换

()2()(4)f t U t t δ=+-41()2(())j j F j e e j ωωωπδωω

--=++MATLAB 程序:

clear all syms t v w phase im re

f=2*sym('heaviside(t-1)')+dirac(t-4);Fw=fourier(f);

Fw=simple(Fw);

subplot(3,1,1);

ezplot(f)

axis([-1 6 0 1.5]);

xlabel('时域波形');

subplot(3,1,2)

ezplot(abs(Fw));

im=imag(Fw);

re=real(Fw);

xlabel('幅度频谱');

phase=atan(im/re);

subplot(3,1,3);

ezplot(phase);

xlabel('相位频谱');

程序运行结果图

实验一利用DFT分析信号频谱

实验一利用DFT 分析信号频谱 一、 实验目的 1. 加深对DFT 原理的理解。 2. 应用DFT 分析信号的频谱。 3. 深刻理解利用DFT 分析信号频谱的原理,分析实现过程中出现的现象及解决方法。 二、 实验设备与环境 计算机、MATLAB^件环境。 三、 实验基础理论 1. DFT 与DTFT 的关系 方法二:实际在MATLAB 十算中,上述插值运算不见得是最好的办法。 由于DFT 是DTFT 的取 样值,其相邻两个频率样本点的间距为 —,所以如果我们增加数据的长度 N,使得到的 N DFT 谱线就更加精细,其包络就越接近 DTFT 的结果,这样就可以利用 DFT 计算DTFT 如果 没有更多的数据,可以通过补零来增加数据长度。 3、利用DFT 分析连续时间函数 利用DFT 分析连续时间函数是,主要有两个处理:①抽样,②截断 对连续时间信号x a (t) 一时间T 进行抽样,截取长度为 M 则 址 ML X a (N)「-x a (t)e4dt 二「x a (nT)e jnT n=0 再进行频域抽样可得 M 4 —j 竺 n 送,T' X a (nT)e N =TX M (k) NT n =0 因此,利用DFT 分析连续时间信号的步骤如下: (1 )、确定时间间隔,抽样得到离散时间序列 x(n). (2) 、选择合适的窗函数和合适长度 M 得到M 点离散序列x M DFT 实际上是 DTFT 在单位圆上以 的抽样,数学公式表示为: N-1 _j 空 k X(k) = X(z)| 耳八 x(n)e N z” N n=0 (2 — 1) 2、利用 DFT 求DTFT 方法一:利用下列公式: 2rk X(e j )二、X(k)( ) k=0 N k= 0,1,..N - 1 (2 — 2) Sn(N ,/2) Nsin(,/2) .N A e 2为内插函数 (2— 3) (2—4) X a (r 1)|

09典型信号的频谱分析

实验九 典型信号的频谱分析 一. 实验目的 1. 在理论学习的基础上,通过本实验熟悉典型信号的频谱特征,并能够从信号频谱中读取 所需的信息。 2. 了解信号频谱分析的基本原理和方法,掌握用频谱分析提取测量信号特征的方法。 二. 实验原理 信号频谱分析是采用傅里叶变换将时域信号x(t)变换为频域信号X(f),从而帮助人们从另一个角度来了解信号的特征。 图1、时域分析与频域分析的关系 信号频谱X(f)代表了信号在不同频率分量成分的大小,能够提供比时域信号波形更直观,丰富的信息。时域信号x(t)的傅氏变换为: dt e t x f X ft j ?+∞ ∞--=π2)()( (1) 式中X(f)为信号的频域表示,x(t)为信号的时域表示,f 为频率。 工程上习惯将计算结果用图形方式表示, 以频率f 为横坐标,X(f)的实部)(f a 和虚部 )(f b 为纵坐标画图,称为时频-虚频谱图; 以频率f 为横坐标,X(f)的幅值)(f A 和相位 )(f ?为纵坐标画图,则称为幅值-相位谱; 以f 为横坐标,A(f) 2为纵坐标画图,则称为 功率谱,如图所示。 频谱是构成信号的各频率分量的集合,它 完整地表示了信号的频率结构,即信号由哪些 谐波组成,各谐波分量的幅值大小及初始相 位,揭示了信号的频率信息。 图2、信号的频谱表示方法

三. 实验内容 1. 白噪声信号幅值谱特性 2. 正弦波信号幅值谱特性 3. 方波信号幅值谱特性 4. 三角波信号幅值谱特性 5. 正弦波信号+白噪声信号幅值谱特性 四. 实验仪器和设备 1. 计算机1台 2. DRVI快速可重组虚拟仪器平台1套 3. 打印机1台 五. 实验步骤 1.运行DRVI主程序,点击DRVI快捷工具条上的"联机注册"图标,选择其中的“DRVI 采集仪主卡检测”或“网络在线注册”进行软件注册。 2.在DRVI软件平台的地址信息栏中输入WEB版实验指导书的地址,在实验目录中选择 “典型信号频谱分析”,建立实验环境。 图5 典型信号的频谱分析实验环境 下面是该实验的装配图和信号流图,图中的线上的数字为连接软件芯片的软件总线数据线号,6017、6018为两个被驱动的信号发生器的名字。 图6 典型信号的频谱分析实验装配图

非周期信号的傅里叶变换MATLAB仿真实验

00[()] jw t f F f e F j w w ±??若(t)(jw)则(t)00()jwt f F f F jw e ±?±?若(t)(jw)则(t t )1()w f F f a F j a a ??若(t)(jw)则(t)()2f t f π??若(t)F(jw)则F (-w)()()df t f F jwF jw dt ??若(t)(jw)则 非周期信号的傅里叶变换MATLAB 仿真实验 一、实验目的 (1)熟悉连续非周期信号频谱特点及其分析方法; (2)掌握用MATLAB 实现傅里叶变换。 二、非周期信号的傅里叶变换原理及性质 设周期信号)(t f 展开成复指数形式的傅里叶级数为t jn n e n F t f 1)()(1ωω-∞ -∞=∑=, dt e t f T n F t jn T T 1112211)(1)(ωω--?=(两边同乘1T ) 得 dt e t f n f T n F t jn T T 1112 2 1111)()(2)(ωωωπω--?== 上式左边,当1T ∞→时,如前所述,→11/)(ωωn F 有限值,并且成为一个连续的频率函数,即频谱密度函数用)(ωF 表示为 11)(2lim )(1 ωωπωn F F T ∞→=,进而得出 dt e t f F t j ωω-∞ ∞-?=)()( 傅立叶变换的性质 (1)线性性质: 1122()()()()f t F jw f t F jw ??若和 11221122()()()()a f t a f t a F jw a F jw +?+则 (2)频移性质: (3)时移性质: (4)尺度变换性质: (5)对称性质: (6)时域微分性质:

数字信号课程设计 应用FFT对信号进行频谱分析

实验二应用FFT对信号进行频谱分析 一、实验目的 1.加深对离散信号的DTFT和DFT的及其相互关系的理解。 2.在理论学习的基础上,通过本次实验,加深对快速傅立叶变换 的理解,熟悉FFT算法及其程序的编写。 3.熟悉应用FFT对典型信号进行频谱分析的方法。 4.了解应用FFT进行信号频谱分析过程中可能出现的问题,以便 在实际中正确应用FFT。 二、实验原理与方法 一个连续信号x a(t)的频谱可以用他的傅立叶变换表示为: = 如果对该信号进行理想采样,可以得到采样序列:x(n)=X a(nT) 同样可以对该序列进行Z变换,其中T为采样周期:X(z)= 当Z=e jω的时候,我们就得到了序列的傅立叶变换:X(e j ω)= 其中称为数字频率,它和模拟域频率的关系为: 式中的f s是采样频率,上式说明数字频率是模拟频率对采样频率 f s的归一化。同模拟域的情况相似,数字频率代表了序列值变化的 速率,而序列的傅里叶变换为序列的频谱。序列的傅里叶变换和对应的采样信号频率具有下式的对应关系。 X(e jω)= 即序列的频谱是采样信号频谱的周期延拓。从上式可以看出,只要分析采样序列的频谱,就可以得到相应的连续信号频谱,就可以得到相应的连续信号的频谱。注意:这里的信号必须是带限信号,采样也必须满足Nyquist定理。 在各种信号序列中,有限长序列在数字信号处理中占有很重要的地位。无限长的序列也往往可以用有限长序列来逼近。对于有限长的序列我们可以使用离散傅里叶变换(DFT),这一变换可以很好地反映序列的频域特性,并且容易利用快速算法在计算机上实现当序列的长度是N时,我们定义离散傅里叶变化为:X(k)=DFT[x(n)]= 其中,它的反变换定义为: x(n)=IDFT[X(k)]= 令Z=,则有:==DFT[x(n)] 可以得到,是Z平面单位圆上幅角为 的点,就是将单位圆进行N等分以后第K个点。所以,X(k)是Z变换在单位圆上的等距采样,或者说是序列福利叶变换的等距

信号的频谱分析及MATLAB实现

第23卷第3期湖南理工学院学报(自然科学版)Vol.23 No.3 2010年9月 Journal of Hunan Institute of Science and Technology (Natural Sciences) Sep. 2010信号的频谱分析及MATLAB实现 张登奇, 杨慧银 (湖南理工学院信息与通信工程学院, 湖南岳阳 414006) 摘 要: DFT是在时域和频域上都已离散的傅里叶变换, 适于数值计算且有快速算法, 是利用计算机实现信号频谱分析的常用数学工具. 文章介绍了利用DFT分析信号频谱的基本流程, 重点阐述了频谱分析过程中误差形成的原因及减小分析误差的主要措施, 实例列举了MATLAB环境下频谱分析的实现程序. 通过与理论分析的对比, 解释了利用DFT分析信号频谱时存在的频谱混叠、频谱泄漏及栅栏效应, 并提出了相应的改进方法. 关键词: MA TLAB; 频谱分析; 离散傅里叶变换; 频谱混叠; 频谱泄漏; 栅栏效应 中图分类号: TN911.6 文献标识码: A 文章编号: 1672-5298(2010)03-0029-05 Analysis of Signal Spectrum and Realization Based on MATLAB ZHANG Deng-qi, YANG Hui-yin (College of Information and Communication Engineering, Hunan Institute of Science and Technology, Yueyang 414006, China) Abstract:DFT is a Fourier Transform which is discrete both in time-domain and frequency-domain, it fits numerical calculation and has fast algorithm, so it is a common mathematical tool which can realize signal spectrum analysis with computer. This paper introduces the basic process of signal spectrum analysis with DFT, emphasizes the causes of error producing in spectrum analysis process and the main ways to decrease the analysis error, and lists the programs of spectrum analysis based on MATLAB. Through the comparison with the theory analysis, the problems of spectrum aliasing, spectrum leakage and picket fence effect are explained when using DFT to analyze signal spectrum, and the corresponding solution is presented. Key words:MATLAB; spectrum analysis; DFT; spectrum aliasing; spectrum leakage; picket fence effect 引言 信号的频谱分析就是利用傅里叶分析的方法, 求出与时域描述相对应的频域描述, 从中找出信号频谱的变化规律, 以达到特征提取的目的[1]. 不同信号的傅里叶分析理论与方法, 在有关专业书中都有介绍, 但实际的待分析信号一般没有解析式, 直接利用公式进行傅里叶分析非常困难. DFT是一种时域和频域均离散化的傅里叶变换, 适合数值计算且有快速算法, 是分析信号的有力工具. 本文以连续时间信号为例, 介绍利用DFT分析信号频谱的基本流程, 重点阐述频谱分析过程中可能存在的误差, 实例列出MATLAB 环境下频谱分析的实现程序. 1 分析流程 实际信号一般没有解析表达式, 不能直接利用傅里叶分析公式计算频谱, 虽然可以采用数值积分方法进行频谱分析, 但因数据量大、速度慢而无应用价值. DFT在时域和频域均实现了离散化, 适合数值计算且有快速算法, 是利用计算机分析信号频谱的首选工具. 由于DFT要求信号时域离散且数量有限, 如果是时域连续信号则必须先进行时域采样, 即使是离散信号, 如果序列很长或采样点数太多, 计算机存储和DFT计算都很困难, 通常采用加窗方法截取部分数据进行DFT运算. 对于有限长序列, 因其频谱是连续的, DFT只能描述其有限个频点数据, 故存在所谓栅栏效应. 总之, 用DFT分析实际信号的频谱, 其结果必然是近似的. 即使是对所有离散信号进行DFT变换, 也只能用有限个频谱数据近似表示连续频 收稿日期: 2010-06-09 作者简介: 张登奇(1968? ), 男, 湖南临湘人, 硕士, 湖南理工学院信息与通信工程学院副教授. 主要研究方向: 信号与信息处理

周期矩形信号的频谱分析

1.周期信号的频谱 周期信号在满足一定条件时,可以分解为无数三角信号或指数之和。这就是周期信号的傅里叶级数展开。在三角形式傅里叶级数中,各谐波分量的形式为()1cos n n A n t ω?+;在指数形式傅里叶级数中,分量的形式必定为1j n t n F e ω 与1-j -n t n F e ω 成对出现。为了把周期信号所具有的各 次谐波分量以及各谐波分量的特征(如模、相角等)形象地表示出来,通常直接画出各次谐波的组成情况,因而它属于信号的频域描述。 以周期矩形脉冲信号为lifenxi 周期信号频谱的特点。周期矩形信号在一个周期(-T/2,T/2)内的时域表达式为 ,2 0,>2 ()A t T t f t ττ ≤?=?? (2-6) 其傅里叶复数系数为 12 n n A F Sa T ωττ?? = ??? (2-7) 由于傅里叶复系数为实数,因而各谐波分量的相位为零(n F 为正)或为π±(n F 为负),因此不需要分别画出幅度频谱n F 与相位频谱n φ。可以直接画出傅里叶系数n F 的分布图。 如图2.4.1所示。该图显示了周期性矩形脉冲信号()T f t 频谱的一些性质,实际上那个也是周期性信号频谱的普遍特性: ① 离散状频谱。即谱线只画出现在1ω的整数倍频率上,两条谱线的间隔为1ω(等于2π/t )。 ② 谱线宽度的包络线按采样函数()1/2a S n ωτ的规律变化。如图2.4.2所示。但1ω 为 2π τ 时,即( )2m π ωτ =(m=1,2,……)时,包络线经过零点。在两相邻 零点之间,包络线有极值点,极值的大小分别为-0.212()2A T τ,

DFT在信号频谱分析中的应用

DFT在信号频谱分析中的应用 目录 Ⅰ.设计题目 (1) Ⅱ.设计目的 (1) Ⅲ.设计原理 (1) Ⅳ.实现方法 (1) Ⅴ.设计内容及结果 (5) Ⅵ.改进及建议 (11) Ⅶ.思考题及解答 (14) Ⅷ.设计体会及心得 (15) Ⅸ.参考文献 (16)

Ⅰ.设计题目 DFT 在信号频谱分析中的应用 Ⅱ.设计目的 掌握离散傅里叶变换的有关性质,利用Matlab 实现DFT 变换。了解DFT 应用,用DFT 对序列进行频谱分析,了解DFT 算法存在的问题及改进方法。学习并掌握FFT 的应用。 Ⅲ.设计原理 所谓信号的频谱分析就是计算信号的傅里叶变换。连续信号与系统的傅里叶分析显然不便于直接用计算机进行计算,使其应用受到限制,而DFT 是一种时域和频域均离散化的变换,适合数值运算,成为分析离散信号和系统的有力工具。 工程实际中,经常遇到的连续信号Xa(t),其频谱函数Xa(jW)也是连续函数。数字计算机难于处理,因而我们采用DFT 来对连续时间信号的傅里叶变换进行逼近,进而分析连续时间信号的频谱。 Ⅳ.实现方法 离散傅里叶变换是有限长序列的傅里叶变换,它相当于把信号的傅里叶变换进行等频率间隔采样,并且有限长序列的离散傅里叶变换和周期序列的离散傅里叶级数本质是一样的。 快速傅里叶变换(FFT )并不是一种新的变换,它是离散傅里叶变换的一种快速算法,并且主要是基于这样的思路而发展起来的:(1)把长度为N 的序列的DFT 逐次分解成长度较短的序列的DFT 来计算。(2)利用WN(nk)的周期性和对称性,在DFT 运算中适当的分类,以提高运算速度。(对称性nk N nk N W W N -=+2 ,

信号的频谱分析

姓名冯浩学号222017322092029 班级电气2班 专业电气工程及其自动化实验日期2019年6月10日实验学时 3 一.实验名称 信号的频谱分析 二.实验目的 1.熟悉快速傅里叶变换的fft函数的调用; 2.熟悉频谱分析仿真的方法; 3.验证时域抽样定理。 三.实验原理(略) 四.仿真实验练习 1.显示海明窗函数时域波形与频谱,与矩形窗比较。 海明窗函数与矩形窗函数比较脚本程序: N=51; w=hamming(N); %长度为51的海明窗 W=fft(w,256); %作256点的快速傅里叶变换 subplot(221);stem([0:N-1],w);title(‘海明窗函数’) subplot(222);plot([-128:127],abs(fftshift(W))); %将零频点移到频谱中 %间并取幅值为正 title(‘海明窗频谱’) w=boxcar(N); %长度为51的矩形窗 W=fft(w,256); subplot(223);stem([0:N-1],w); title(‘矩形窗函数’) Subplot(224);plot([-128:127],abs(fftshift(W)));title(‘矩形窗频谱’)

2.编写函数,分析抽样函数的频谱,并分析在不同采样频率、不同采样时间区间、不同加窗函数情况下的频谱与理论函数的区别。 函数编写: function X = SY2(T,t0,t1,window) if winodw==[] %输入参数没有说明加窗类型时默认使用矩形窗 window=1; end t=t0:T:t1; x=sinc(100*t); N=length(x); switch window case 1 w=boxcar(N); %矩形窗 case 2 w=hamming(N); %海明窗 case 3 w=hanning(N); %汉宁窗 end x=x'.*w; %转置后相乘 X=fft(x); end ①不同的采样频率脚本程序: clc t0=-1; t1=1; T=[0.001 0.005 0.01 0.05]; %取不同采样时间(间隔) for i=1:4 X=hs(T(i),t0,t1); N=length(X); w=(0:N-1)*5/N; %频率区间为5 subplot(5,1,i);plot(w,abs(X)) ylabel({num2str(T(i))}) %y坐标标题为采样时间 end 图片显示如下

实验:典型信号频谱分析报告

实验3.2 典型信号频谱分析 一、 实验目的 1. 在理论学习的基础上,通过本实验熟悉典型信号的波形和频谱特征,并 能够从信号频谱中读取所需的信息。 2. 了解信号频谱分析的基本方法及仪器设备。 二、 实验原理 1. 典型信号及其频谱分析的作用 正弦波、方波、三角波和白噪声信号是实际工程测试中常见的典型信号,这些信号时域、频域之间的关系很明确,并且都具有一定的特性,通过对这些典型信号的频谱进行分析,对掌握信号的特性,熟悉信号的分析方法大有益处,并且这些典型信号也可以作为实际工程信号分析时的参照资料。本次实验利用DRVI 快速可重组虚拟仪器平台可以很方便的对上述典型信号作频谱分析。 2. 频谱分析的方法及设备 信号的频谱可分为幅值谱、相位谱、功率谱、对数谱等等。对信号作频谱分析的设备主要是频谱分析仪,它把信号按数学关系作为频率的函数显示出来,其工作方式有模拟式和数字式二种。模拟式频谱分析仪以模拟滤波器为基础,从信号中选出各个频率成分的量值;数字式频谱分析仪以数字滤波器或快速傅立叶变换为基础,实现信号的时—频关系转换分析。 傅立叶变换是信号频谱分析中常用的一个工具,它把一些复杂的信号分解为无穷多个相互之间具有一定关系的正弦信号之和,并通过对各个正弦信号的研究来了解复杂信号的频率成分和幅值。 信号频谱分析是采用傅立叶变换将时域信号x(t)变换为频域信号X(f),从而帮助人们从另一个角度来了解信号的特征。时域信号x(t)的傅氏变换为: 式中X(f)为信号的频域表示,x(t)为信号的时域表示,f 为频率。 3. 周期信号的频谱分析 周期信号是经过一定时间可以重复出现的信号,满足条件: dt e t x f X ft j ?+∞ ∞--=π2)()(

连续非周期信号频谱分析及Matlab实现

《信号与系统A(1)》课程自学报告 实施报告 题目:连续非周期信号频谱分析及Matlab实现学号: 姓名: 任课教师: 联系方式:

第一部分. 理论自学内容阐述 (一) 系统物理可实现性、佩利-维纳准则 通过之前的学习我们知道,理想低通滤波器在物理上是不可能实现的,但是我们却可以做出传输特性接近理想特性的网络。 如下图是一个低通滤波器,其中 R =√RC 图1-1 一个低通滤波网络 则其网络传递函数为: (式1-1) 引入符号 ωc =1√LC ,则(式1-1)改为: 其中 ) (1t v C R L )(2t v - - ++()()()R L LC C R L C R V V H ω ωωωωωωωj 11 j 11j j 1 1 j j j 2 12+-=+++==()()()ω?ωωωωωωωωωωωj 22 2e j 3j 33j 11j H H c c c c c c =??? ? ??+??? ???+???? ??-=2+222=()()?? ?? ? ????????????? ??--=??? ? ??+???????????? ??-= 2c c 2c 22c 1arctan 11j ωωωωω?ωωωωωH

求出其冲激响应为: h (t )= 2ωc √3 e ? ωc 2sin (√3ωct ) 画出波形图及频谱图如下: 图1-2 h(t)的波形图 幅度特性 相位特性 图1-3 幅度特性和相位特性 可以看出这些曲线与理想低通滤波器有相似之处,但是同时也有不同之处。这个电路的幅度特性不可能出现零值,冲激响应的起始时刻在t=0处。 那么究竟什么样的系统数学模型可以在物理上实现呢? 就时间域特性而言,一个物理可实现网络的冲激响应h(t)在t<0时必须为0。那么由于理想低通滤波器不是一个因果系统,所以它是不可能在物理上实现的。 从频域特性来看,|H(jw)| 要满足平方可积条件。佩利和维纳证明了对于幅

DFT信号频谱分析

一,实验名称: DFT 的频谱分析 二,实验目的: 1. 加深对 DFT 原理的理解,熟悉DFT 的性质。 2. 掌握离散傅里叶变换的有关性质,利用Matlab 实现DFT 变换 3. 深刻理解利用 DFT 分析信号频谱的原理,分析实现过程中出现的现象及解决方法 三,实验原理: 所谓信号的频谱分析就是计算信号的傅里叶变换。连续信号与系统的傅里叶分析显然不便于直接用计算机进行计算,使其应用受到限制,而DFT 是一种时域和频域均离散化的变换,适合数值运算,成为分析离散信号和系统的有力工具。工程实际中,经常遇到的连续信号Xa(t),其频谱函数Xa(jW)也是连续函数。数字计算机难于处理,因而我们采用DFT 来对连续时间信号的傅里叶变换进行逼近,进而分析连续时间信号的频谱。 离散傅里叶变换是有限长序列的傅里叶变换,它相当于把信号的 傅里叶变换进行等频率间隔采样,并且有限长序列的离散傅里叶变换和周期序列的离散傅里叶级数本质是一样的。快速傅里叶变换(FFT )并不是一种新的变换,它是离散傅里叶变换的一种快速算法,并且主要是基于这样的思路而发展起来的:(1)把长度为N 的序列的DFT 逐次分解成长度较短的序列的DFT 来计算。(2)利用WN(nk)的周期性和对称性,在DFT 运算中适当的分类,以提高运算速度。(对称性 nk N nk N W W N -=+2 ,12 -=N N W ;周期性nk N nk N nrN N k rN n N W W W W ---==)(,r 为任意整数

,1=nrN N W ) 离散傅里叶变换的推导: 离散傅里叶级数定义为 nk j N k p p e k x N n x N 21 )(1 )(π∑-== (1-1) 将上式两端乘以nm j N e π2-并对n 在0~N-1 求和可得 ?? ??? ?==∑∑∑∑∑-=---=-=-=---=-1 )(1 1 0101 )(1 0N 2 N 2N 2 )()(1)(N n m k n j N N k p N n N k m k n j p N n nm j p e k X e k X N e n x πππ 因为 { m k 1m k 0)(N )(1 ) (N 2 N 2N 2-1-1N 11=≠---=-==∑m k j m k j N n m k n j e e e N πππ 所以∑∑-=-=--=1 10 )()()(N 2N k p N n nm j p m k k X e n x δπ 这样∑-=-=10 N 2)()(N n nm j p p e n x m X π用k 代替m 得 ∑-=-=10 N 2)()(N n nk j p P e n x k X π (1-2) 令N 2πj N e W -=,则(1-2)成为DFS []∑-===10 )()()(N n nk N p p p W n x k X n x (1-3) (1-1)成为 IDFS [] ∑-=-= =1 )(1 )()(N n nk N p p p W k X N n x k X (1-4) 式(1-3)、(1-4)式构成周期序列傅里叶级数变换关系。其中 )()(k X n x p p 、都是周期为N 的周期序列,DFS[·]表示离散傅里叶级数 正变换,IDFS[·]表示离散傅里叶级数反变换。习惯上,对于长为N 的周期序列,把0≤n ≤N-1区间称为主值区,把)1(~)0(-N x x p p 称为)(n x p 的主值序列,同样也称)1(~)0(-N X X p p 为)(k X p 的主值序列。由于 )()()(n R n x n x N p =,对于周期序列)(n x p 仅有N 个独立样值,对于任何一 个周期进行研究就可以得到它的全部信息。在主值区研究)(n x p 与)(n x 是等价的,因此在主值区计算DFS 和DFT 是相等的,所以DFT 计算公式形式与DFS 基本相同。其关系为

应用FFT实现信号频谱分析

电信类课程试验报告

2.2 clear all N=100; n=0:N-1; xn=cos(2*pi*n/N); XK=fft(xn,N); magXK=abs(XK); phaXK=angle(XK); subplot(1,2,1); plot(n,xn); xlabel('n');ylabel('x(n)'); title('x(n)N=100') subplot(1,2,2) k=0:length(magXK)-1; title('x(n)N=100') subplot(1,2,2) k=0:length(magXK)-1; k=k*(2/100) stem(k,magXK,'.'); xlabel('k');ylabel('|X(k)|');

2.3复合函数 clear all N=100; n=0:N-1; xn=0.9*sin(2*pi*n/N)+0.6*sin(2*pi*n/(N/3)); XK=fft(xn,N); magXK=abs(XK); phaXK=angle(XK); subplot(1,2,1); plot(n,xn); xlabel('n');ylabel('x(n)'); title('x(n)N=100') subplot(1,2,2) k=0:length(magXK)-1; title('x(n)N=100') subplot(1,2,2) k=0:length(magXK)-1; k=k*(2/100) stem(k,magXK,'.'); xlabel('k');ylabel('|X(k)|'); title('X(k)N=100');

周期信号的频谱分析

信号与系统 实验报告 实验三周期信号的频谱分析 实验报告评分:_______ 实验三周期信号的频谱分析 实验目的: 1、掌握连续时间周期信号的傅里叶级数的物理意义和分析方法; 2、观察截短傅里叶级数而产生的“Gibbs现象”,了解其特点以及产生的原因;

3、掌握各种典型的连续时间非周期信号的频谱特征。 实验内容: (1)Q3-1 编写程序Q3_1,绘制下面的信号的波形图: 其中,0 = 0.5π,要求将一个图形窗口分割成四个子图,分别绘制cos( 0t)、cos(3 0t)、cos(5 0t)和x(t) 的波形图,给图形加title,网格线和x坐标标签,并且程序能够接受从键盘输入的和式中的项数。 程序如下: clear,%Clear all variables close all,%Close all figure windows dt = 0.00001; %Specify the step of time variable t = -2:dt:4; %Specify the interval of time 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)%Plot x1 axis([-2 4 -2 2]); grid on, title('signal cos(w0.*t)') subplot(222) plot(t,x2)%Plot x2 axis([-2 4 -2 2]); grid on, title('signal cos(3*w0.*t))') subplot(223) plot(t,x3)%Plot x3 axis([-2 4 -2 2])

典型函数的频谱

典型函数的频谱(矩形窗函数, 汉宁窗函数,直线,阶跃函数,δ函数,方波,三角波等),如图13~18所示。 050100150200250 0.511.52矩形窗函数的时域波形图 050 100150 100 200 300 矩形窗函数频域波形图 频率 幅值 图13 50 100 150 200 250 300 00.20.40.60.81δ函数的时域波形图 050 100150 0.511.5 2δ函数的频域波形图 频率 幅值 图 14

00.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2 00.5 1 方波的时域波形图 050 100150 50 100 150 方波的频域波形图 频率 幅值 图 15 50 100 150 200 250 300 00.20.40.60.81汉宁窗函数的时域波形图 050 100150 50 100 150 汉宁窗函数频域波形图 频率 幅值 图 16

050100150200250300 0.511.52阶跃函数的时域波形图 050 100150 100 200 300 阶跃函数的频域波形图 频率 幅值 图 17 00.020.040.060.080.10.120.140.160.180.2 -1 -0.500.51三角波的时域波形图 050 100150 204060 80三角波的频域波形图 频率 幅值 图18 此部分MA TLAB 代码如下: t=0:0.001:0.2; N=256; FS=300; w=boxcar(N); %产生信号 figure; plot(w);title('矩形窗函数的时域波形图'); axis([0,260,0,2]);grid on;

连续信号的频域分析

第四章 连续信号的频域分析 将信号分解为若干不同频率的正弦信号或虚指数信号,实质上是将信号在频率域上进行分解,因此根据这种基本思想对信号和系统的分析称为频域分析。这种分解过程是通过傅里叶级数和傅里叶变换这一数学工具来实现的。 本章首先介绍连续信号的傅里叶级数和傅里叶变换,熟悉信号频谱的概念。 4.1 基本要求 1.基本要求 ? 了解傅里叶级数和傅里叶变换的定义及其物理含义; ? 掌握信号频谱和频谱密度的概念; ? 了解连续谱和离散谱的特点和区别; ? 掌握傅里叶变换的常用性质; ? 掌握周期信号傅里叶变换的求解方法。 2.重点和难点 ? 傅里叶变换的性质及其应用 4.2 知识要点 1.周期信号的傅里叶级数 (1)傅里叶级数展开式 三角形式:∑∑∞ =∞=+Ω+=Ω+Ω+=1010)cos(2)]sin()cos([2)(n n n n n n t n A A t n b t n a a t f ?(4-1) 指数形式: ∑∑∞ -∞ =+Ω∞ -∞ =Ω= =n t n n n t n n n F F t f )j(j e e )(? (4-2) 其中 ? +Ω= T t t n t t n t f T a 00 d cos )(2 ,n =0,1,2,? (4-3) ? +Ω= T t t n t t n t f T b 00 d sin )(2,n =1,2,? (4-4) 且

n n n n n n a b b a A a A arctg , ,2 200-=+==? (4-5) ?+Ω-= T t t t n n t t f T F 00 d e )(1j (4-6) (2)两种形式之间的转换关系 0)( e 2 1 j ≥=n A F n n n ? (4-7) 并且|F n |为偶函数,?n 为奇函数,即 ||||n n F F -=,||||n n -=?? (4-8) (3)傅里叶级数的物理含义 通过傅里叶级数可以将任意周期信号f (t )分解为若干个正弦信号(三角形式)或复简谐信号(指数形式)的叠加。每个正弦信号分量的频率为周期信号基波频率的n 倍(n ?0),即n ?,而幅度为A n 或者2|F n |,相位为?n ,将其称作第n 次谐波分量。特别地,将频率为0(即n =0)的分量称为直流分量,幅度为A 0/2或者F 0;频率等于基波频率?(即n =1)的分量称为基波分量。 2.周期信号的频谱 通过傅里叶级数可以将时域中的周期信号分解为直流分量、基波分量和各次谐波分量之和,傅里叶级数展开式中的A n 、?n 或傅里叶系数F n 分别代表了各分量的幅度和相位随谐波次数n (从而频率n ?)的变化关系,称为周期信号的频谱,其中A n 或|F n |称为幅度谱,?n 称为相位谱。 A n 或|F n |、?n 都是关于整型变量n 的实函数,分别以其为纵轴,以n (或者n ?)为横轴,得到的图形称为周期信号的幅度谱图和相位谱图,合称为周期信号的频谱图。 但是,在三角形式的傅里叶级数中,A n 和?n 的自变量n 只能取非负的整数,因此称为单边频谱,而在F n 中,n 可以为任意的整数,相应地将F n 称为双边频谱。对同一个周期信号,其单边和双边频谱可以通过式(4-7)进行相互转换。 所有周期信号的频谱都具有离散性,因此称为离散谱。 3.非周期信号的傅里叶变换及其频谱密度 非周期信号的傅里叶变换及傅里叶反变换的定义为 ?∞ ∞--=t t f F t d e )()j (j ωω (4-9) ?∞ ∞ -= ωωωd )e (j 2π1)(j t F t f (4-10) 其中正变换用于根据信号的时域表达式求其频谱表达式,反变换用于根据其频谱表达式求时域表达式。 通过傅里叶变换可以将信号分解为不同频率的复简谐信号的叠加,而信号的傅里叶变换F (j ?)反映了信号中各分量的幅度和相位随其频率? 的变化关系,称为信号的频谱密度,又称为频谱密度函数或频谱函数。 教材表4-1中列出了一些基本信号的傅里叶变换,在求解复杂信号的傅里叶变换和频谱密度时经常用到。 4.傅里叶变换的性质

用FFT对信号作频谱分析

实验三:用FFT 对信号作频谱分析 一、实验原理与方法 1、用FFT 对信号作频分析是学习数字信号处理的重要内容,经常需要进行分析的信号是模拟信号的时域离散信号。对信号进行谱分析的重要问题是频谱分辨率D 和分析误差。频谱分辨率直接和FFT 的变换区间N 有关,因为FFT 能够实现的频率分辨率是N π2,因此要求D N ≤π2。可以根据此式选择FFT 的变换区间N 。误差主要来自于用FFT 作频谱分析时,得到的是离散谱,而信号(周期信号除外)是连续谱,只有当N 较大时,离散谱的包络才能逼近连续谱,因此N 要适当选择大一些。 2、周期信号的频谱是离散谱,只有用整数倍周期的长度作FFT ,得到的离散谱才能代表周期信号的频谱。如果不知道信号周期,可以尽量选择信号的观察时间长一些。 3、对模拟信号进行谱分析时,首先要按照采样定理将其变成时域离散信号。如果是模拟周期信号,也应该选取整数倍周期长度,经过采样后形成周期序列,按照周期序列的谱分析进行。 二、实验内容 1、对以下序列进行FFT 谱分析: )()(41n R n x = ?????≤≤-≤≤+=n n n n n n x 其他0 7483 01 )(2 ?????≤≤-≤≤-=n n n n n n x 其他0 7433 04)(3 选择FFT 的变换区间N 为8和16两种情况进行频谱分析,分别打印出幅频特性曲线,并进行讨论、分析。程序见附录3.1、实验结果见图3.1。 2、对以下周期序列进行谱分析: n n x 4cos )(4π = n n n x 8cos 4cos )(5π π+= 选择FFT 的变换区间N 为8和16两种情况进行频谱分析,分别打印出幅频特性曲线,并进行讨论、分析与比较。程序见附录3.2、实验结果见图3.2。 3、对模拟周期信号进行频谱分析: t t t t x πππ20cos 16cos 8cos )(6++= 选择采样频率Fs=64Hz ,FFT 的变换区间N 为16、32、64三种情况进行频谱分析,分别打印出幅频特性曲线,并进行讨论、分析与比较。程序见附录3.3、实验结果见图3.3。

噪声中正弦信号的经典法频谱分析

实验报告 一、实验名称 噪声中正弦信号的经典法频谱分析 二、实验目的 通过对噪声中正弦信号的经典法频谱分析,来理解和掌握经典谱估计的知识,以及学会应用经典谱估计的方法。 三、基本原理 1.周期图法:又称直接法。把随机信号)(n x 的N 点观察数据)(n x N 视为一能量有限信号,直接取)(n x N 的傅里叶变换,得)(jw N e X ,然后再取其幅值的平方,并除以N ,作为对)(n x 真 实的功率谱)(jw e P 的估计,以)(?jw PER e P 表示用周期图法估计出的功率谱,则2)(1)(?w X N w P n PER =。 2.自相关法:又称为间接法功BT 法。先由)(n x N 估计出自相关函数)(?m r ,然后对)(?m r 求傅里叶变换得到)(n x N 的功率谱,记之为)(?w P BT ,并以此作为对)(w P 的估计,即1,)(?)(?-≤=--=∑N M e m r w P jwm M M m BT 。 3.Bartlett 法:对L 个具有相同的均值μ和方差2σ的独立随机变量1X ,2X ,…,L X ,新随机变量L X X X X L /)(21+++= 的均值也是μ,但方差是L /2σ,减小了L 倍。由此得 到改善)(?w P PER 方差特性的一个有效方法。它将采样数据)(n x N 分成L 段,每段的长度都是M ,即N=LM ,第i 段数据加矩形窗后,变为L i e n x M w x M n jwn i N I PER ≤≤=∑-=-1,)(1)(?2 10 。把)(?w P PER 对应相加,再取平均,得到平均周期图2 1110 )(1)(?1)(∑∑∑==-=-==L i L i M n jwn i N i PER PER e n x ML w P L w P 。 4.Welch 法:它是对Bartlett 法的改进。改进之一是,在对)(n x N 分段时,可允许每一段的数据有部分的交叠。改进之二是,每一段的数据窗口可以不是矩形窗口,例如使用汉宁窗或汉明窗,记之为)(2n d 。这样可以改善由于矩形窗边瓣较大所产生的谱失真。然后按Bartlett

应用MATLAB对信号进行频谱分析

数字信号处理课程设计报告书 2011年7 月 1日 课题名称 应用MATLAB 对信号进行频谱分析 姓 名 张炜玮 学 号 20086377 院、系、部 电气系 专 业 电子信息工程 指导教师 刘鑫淼 ※※※※※※※※※ ※※ ※※ ※※ ※※ ※※※※※ ※※ 2008级数字信号处理课程设计

应用MATLAB对信号进行频谱分析 20086377 张炜玮 一、设计目的 用MATLAB语言进行编程,绘出所求波形,并且运用FFT求对连续信号进行分析。 二、设计要求 1、用Matlab产生正弦波,矩形波,并显示各自的时域波形图; 2、进行FFT变换,显示各自频谱图,其中采样率、频率、数据长度自选,要求注明; 3、绘制三种信号的均方根图谱; 4、用IFFT回复信号,并显示恢复的正弦信号时域波形图。 三、系统原理 用FFT对信号作频谱分析是学习数字信号处理的重要内容。经常需要进行频谱分析的信号是模拟信号和时域离散信号。频谱分辨率直接和FFT的变换区间N 有关,因为FFT能够实现频率分辨率是2π/N。 x(n)是一个长度为M的有限长序列,则x(n)的N点离散傅立叶变换为: X(k)=DFT[x(n)]= kn N W N n n x ∑ - = 1 ) ( ,k=0,1,...,N-1 N j e N Wπ2- = 逆变换:x(n) =IDFT[X(k)]= kn N W k X N n N - ∑ - = 1 ) ( 1 ,k=0,1,...,N-1 但FFT是一种比DFT更加快速的一种算法,提高了DFT的运算速率,为数字信号处理技术应用于各种信号处理创造了条件,大大提高了数字信号处理技术的发展。本实验就是采用FFT,IFFT对信号进行谱分析。 四、程序设计 fs=input('please input the fs:');%设定采样频率 N=input('please input the N:');%设定数据长度 t=0:0.001:1; f=100;%设定正弦信号频率 %生成正弦信号 x=sin(2*pi*f*t);

相关文档
最新文档