正弦信号的谱分析及提取

正弦信号的谱分析及提取
正弦信号的谱分析及提取

西南科技大学

课程设计报告

课程名称:通信系统课程设计

设计名称:正弦信号的谱分析及提取

姓名:

学号:

班级:

指导教师:

起止日期:2012.6.4-2012.6.18

西南科技大学信息工程学院制

课 程 设 计 任 务 书

学生班级: 学生姓名: 学号: 设计名称: 正弦信号的谱分析及提取 起止日期: 2012.6.11-2012.6.25 指导教师:

设计要求: 基本要求:

采用matlab 或者其他软件工具产生不同频率,不同幅度的两种正弦波信号)n (sin1与)n (sin2,并将这两个信号叠加为一个信号)n (sin3,观察)n (sin3),n (sin2),n (sin1信号的波形。

对叠加后的信号)n (sin3用FFT 作谱分析。

选择合适的指标,设计FIR 数字滤波器,从)n (sin3信号中提取信号)n (sin1与)n (sin2。 扩展要求:

在基本要求的基础上,增加用户设定功能: 用户可以设定两个正弦波信号的频率与幅度 用户可以设定FIR 数字滤波器指标 说明:

设计FIR 数字滤波器可以采用matlab 函数或者工具箱中FDA 工具。

课 程 设 计 学 生 日 志

时间 设计内容

6.04——6.7 查阅相关资料,确定适合于自己的方案

6.8——6.10 构思整体框架,设计总体方案

6.11——6.12 通过网络资源学习matlab 相关使用方法 6.13——6.14 用matlab 产生两个正弦信号 6.15——6.16 将两信号叠加并产生频谱图

6.17——6.18 设计滤波器,用设计的滤波器产生原来的)n (sin1与)n (sin2信号 6.18——

再检查一次过程,并撰写报告准备答辩

课程设计评语表

指导教师评语:

成绩:指导教师:

年月日

正弦信号的谱分析及提取

一、 设计目的和意义 1、熟悉信号的产生以及叠加 2、掌握信号的合成和提取 3、掌握利用FFT 变换做频谱分析 4、学会设计FIR 滤波器 5、理解这中间涉及到的理论知识 6、学会使用matlab 软件

二、 设计原理

1、抽样定理

要把连续的信号变为离散的信号,需要对其进行抽样。若想抽样后的信号能够不失真的还原出原始信号,则抽样频率必须大于或等于两倍原信号谱的最高频率,这就是奈奎斯特抽样定理。即h s f f 2≥。 在实际应用中,即便是对于纯正弦波,也会取 h s f f 5≥或比5倍更多。

fs/2也被称为奈奎斯特频率。也就是说当确定了采样频率后,信号的有效分析带宽也就随之确定了(小于奈奎斯特频率)。实际上通常的信号带宽总是小于奈奎斯特频率的。 2、FFT 变换

FFT (Fast Fourier Transformation ),即为快速傅氏变换,是离散傅氏变换的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。

FFT 实质上还是一种傅里叶变换,只是节省了傅里叶变换的计算次数。信号经过FFT 变换后可以得到它的频域表达式,画出它的频域波形,这样可以更直观的看出信号的频谱特性。 3、窗函数滤波器

数字信号处理的主要数学工具是博里叶变换.而傅里叶变换是研究整个时间域和频率域的关系。不过,当运用计算机实现工程测试信号处理时,不可能对无限长的信号进行测量和运算,而是取其有限的时间片段进行分析。做法是从信号中截取一个时间片段,

然后用观察的信号时间片段进行周期延拓处理,得到虚拟的无限长的信号,然后就可以对信号进行傅里叶变换、相关分析等数学处理。无线长的信号被截断以后,其频谱发生了畸变,原来集中在f(0)处的能量被分散到两个较宽的频带中去了(这种现象称之为频谱能量泄漏)。为了减少频谱能量泄漏,可采用不同的截取函数对信号进行截短,截短函数称为窗函数,简称为窗。泄漏与窗函数频谱的两侧旁瓣有关,如果两侧瓣的高度趋于零,而使能量相对集中在主瓣,就可以较为接近于真实的频谱,为此,在时间域中可采用不同的窗函数来截短信号。

4、整个实验程序的原理图如下:

三、详细设计步骤

1、产生两个正弦波信号,信号幅度和频率要求用户可以自定义。

通过前期做数字信号处理实验时就已经知道,可以利用输入命令input(' ')来输入信号指标,同时MATLAB自带有可以直接产生正弦信号波形的函数sin(x)。所以第一步用于产生所需幅度和频率的信号比较简单。

2、产生FFT变换所需波形,即x1(n)和x2(n)的叠加信号。

两个信号的叠加,即直接将两个信号做相加处理,将其规范在同一个区间内,即得到所需信号波形。

3、将前面叠加所得信号做频谱分析。

MATLAB自带有可以进行快速傅里叶变换所需的函数y=fft(x),或y=fft(x,n)。其中x为所要进行FFT变换的信号。这里n的长度若为2的整数次幂,则MATLAB将自动进行基2的FFT算法;否则,将采用较慢的分列基算法。所以这里需要注意进行FFT 变换的点数需要为2的整数次幂。对x3(n)进行FFT变换后,求其幅度做出其频谱图。在这里我将采样频率简化为2倍信号的最高的频率,满足奈奎斯特抽样定律。

4、设计满足要求的FIR数字滤波器恢复原始信号。

用窗函数法设计FIR 数字滤波器。通过查阅相关资料后知道可以用函数fftfilt 模拟信号经过相关滤波器,即信号的恢复。还有用ceil 函数用以求滤波器的阶数。这里选用汉明窗设计滤波器,主要是因为它的窗谱主瓣比较窄,这样可以获得较陡的过渡带,还有就是因为它窗谱旁瓣的相对幅度较小,这样可以减小肩峰和波纹。

四、 设计结果及分析

信号1输入幅度为1 信号1输入频率为0.3 信号2输入幅度为2 信号2输入频率为0.2

程序运行后得到的信号波形如下图:

1、如图,序列x1(n)、x2(n)、x3(n)和x3(n)的FFT 变换所得的频谱分析,之所以产生这样信号的波形,是为了后面的通过滤波器恢复信号的需要,这样恢复出的信号和原信号比较接近,滤波恢复的效果明显。

10

20

30

-10-505

10n

x 1(n )

sin1 sequence

10

20

30

-10-505

10n

x 2(n )

sin2 sequence

10

20

30

-10

010

20n

x 3(n )

sin3 sequence

0.050.10.150.2

50100

150频率(Hz )

幅值

x3(n) FFT Transform

(图一)

2、在MATLAB 命令行窗口中输入滤波器通带截止频率和阻带截止频率,其值在0和1之

间。在程序设计中就考虑了频率设置时可能不会一下子就成功,所以可以通过观察恢复得到的信号波形和原始信号波形进行比较,反复设置参数,直到二者波形相同,达到滤波恢复的目的。

00.10.2

0.30.40.50.60.70.80.91

-6000

-4000

-2000

Normalized Frequency (?π rad/sample)

P h a s e (d e g r e e s )

00.10.2

0.30.40.50.60.70.80.91

-100

-50

50

Normalized Frequency (?π rad/sample)

M a g n i t u d e (d B )

滤波器1的频谱特性

(图二)

102030

40506070

-10

-505

10

15

n

x 1n

比较图形可知,波形有一定的差别,这可能是参数设置的不适合,和窗函数的选取不当造成的,这些都可以通过在程序中修改相关参数。

(图三)

00.10.2

0.30.40.50.60.70.80.91

-6000

-4000

-2000

Normalized Frequency (?π rad/sample)

P h a s e (d e g r e e s )

00.10.2

0.30.40.50.60.70.80.91

-100

-50

50

Normalized Frequency (?π rad/sample)

M a g n i t u d e (d B )

滤波器2的频谱特性

(图四)

102030

40506070

-10

-505

10

15

n

x 2n

(图五)

3、比较二者的波形,造成二者波形上存在一定的差别是因为参数设置的不适合,和窗函数的选取不当造成的,这里可以通过反复的重新设置滤波器的参数,直至恢复得到较理想的波形。

五、 体会

通过本次课程设计,我学到了很多东西,这个课程设计不仅用到了通信原理的知识,还用信号与系统、数字信号处理、和matlab 相关的知识。虽然这些课程有的没有学过,但是经过自己的查阅资料有学习了一门知识。经过此次课程设计,让我把以前的课程所需的知识又复习了一遍。不仅巩固了以前的知识,还让我更加懂得理论与实践的重要性,通过实践应用,使得自己对书本知识的理解加深,受益匪浅。

我对MATLAB 在数字信号处理中的应用有了一些了解,也为MATLAB 的强大的功能所震撼。它几乎可以应用在我们学习的各个领域中发挥着重要的作用,而我们对它的了解也只还是皮毛而已。几天的学习下来,设计所要求的我只能说是基本上满足,可能是自己的理论知识还不够吧,上课时有些问题自己还没有搞清楚,所以在写程序完成要求时难免会有不当之处。通过设计下来,我对MATLAB 在数字信号处理中的相关函数的应用更加深刻了,能够较熟练地运用了,比如fft,fftfilt,ceil 还有就是窗函数设计FIR 滤波器时对窗函数的选取。

本次设计的重难点是设计一个满足要求的FIR 低通滤波器恢复出两个原始信号。在

这其中涉及到滤波器阶数,滤波器的截止频率的设定,也正是如此所以指标要求可能不能达到,恢复出的信号和原始信号肯定会有差别,这还需要在以后的学习工作中继续改进。

六、参考文献

[1] 张威. MATLAB基础与编程入门. 西安电子科技大学出版社,20008.1

[2] 程佩青数字信号处理教程清华大学出版社,2010.5

[3] 曹志刚、钱亚生现代通信原理清华大学出版社2010.6

[4] 王福昌通信原理学习辅导华中科技大学出版社2008.8

[5] 高成matlab图像处理与应用国防工业出版社2007.4

[6] 刘卫国.MATLAB程序设计教程.中国水利水电出版社,2006

[7] https://www.360docs.net/doc/90694392.html,/p-32240542.html#

附设计程序:

close all;

A1=input('输入信号sin1(n)幅度:')

w1=input('输入信号sin1(n)角频率:') A2=input('输入信号sin2(n)幅度:')

w2=input('输入信号sin2(n)角频率:') f1=w1/(2*pi);

f2=w2/(2*pi);

f=max(f1,f2);

figure(1);

n1=0;

n2=30;

n=[n1:1.5:n2];

x1n=A1*sin(w1*n);

subplot(2,2,1);

stem(n,x1n,'r');

xlabel('n');ylabel('x1(n)');

title('sin1 sequence');

n1=0;

n2=30;

n=[n1:1.5:n2];

x2n=A2*sin(w2*n);

subplot(2,2,2);

stem(n,x2n,'m');

xlabel('n');ylabel('x2(n)');

title('sin2 sequence');

x3n=x1n+x2n;

subplot(2,2,3);

stem(n,x3n,'o');

xlabel('n');ylabel('x3(n)');

title('sin3 sequence');

N=16;

fs=2*f;%采样频率

y=fft(x3n,N);

mag=abs(y);%求幅值

f=(0:length(y)-1)*fs/length(y); subplot(2,2,4);

plot(f,mag);%做频谱图

xlabel('频率(Hz)');ylabel('幅值');

title('x3(n) FFT Transform');

Count=1;

while(Count~=0)

wp=input('滤波器1通带截止频率:')

ws=input('滤波器1阻带截止频率:')

width=ws*pi-wp*pi;

N=ceil(8*pi/width);%求窗函数的阶数

Wn=(wp+ws)*pi/2;%求窗函数的截止频率

window=hamming(N+1);%汉明窗

b=fir1(N,Wn/pi,window);%线性相位FIR数字滤波器,阶数N,截止频率为Wn/pi figure(2);

freqz(b,1);

title('滤波器1的频谱特性');

y1=fftfilt(b,x3n);

figure(3);

stem(y1);

xlabel('n');ylabel('x1n');

title('恢复出的原始信号x1n');

Count=input('输入1继续输入0退出')

end

Count=1;

while(Count~=0)

wp=input('滤波器2通带截止频率:')

ws=input('滤波器2阻带截止频率:')

width=ws*pi-wp*pi;

N=ceil(8*pi/width);

Wn=(wp+ws)*pi/2;

window=hamming(N+1);

b=fir1(N,Wn/pi,window);

figure(4);

freqz(b,1);

title('滤波器2的频谱特性');

y2=fftfilt(b,x3n);

figure(5);

stem(y2);

xlabel('n');ylabel('x2n');

title('恢复出的原始信号x2n');

Count=input('输入1继续输入0退出')

end

对正弦信号的采样频谱分析.doc

H a r b i n I n s t i t u t e o f T e c h n o l o g y 课程设计 课程名称:课程设计2 设计题目:对正弦信号的抽样频谱分析院系:电子与信息工程学院 班级:0805203 设计者:褚天琦 学号:1080520314 指导教师:郑薇 设计时间:2011-10-15 哈尔滨工业大学

一、题目要求: 给定采样频率fs,两个正弦信号相加,两信号幅度不同、频率不同。要求给定正弦信号频率的选择与采样频率成整数关系和非整数关系两种情况,信号持续时间选择多种情况分别进行频谱分析。 二、题目原理与分析: 本题目要对正弦信号进行抽样,并使用fft对采样信号进行频谱分析。因此首先对连续正弦信号进行离散处理。实际操作中通过对连续信号间隔相同的抽样周期取值来达到离散化的目的。根据抽样定理,如果信号带宽小于奈奎斯特频率(即采样频率的二分之一),那么此时这些离散的采样点能够完全表示原信号。高于或处于奈奎斯特频率的频率分量会导致混叠现象。设抽样周期为TS(抽样角频率为ωS),则 可见抽样后的频谱是原信号频谱的周期性重复,当信号带宽小于奈奎斯特频率的二分之一时不会产生频谱混叠现象。 因此,我们对采样频率的选择采取fs>2fo,fs=2fo,fs<2fo三种情况进行分析。对信号采样后,使用fft函数对其进行频谱分析。为了使频谱图像更加清楚,更能准确反映实际情况并接近理想情况,我们采用512点fft。取512点fft不仅可以加快计算速度,而且可以使频谱图更加精确。若取的点数较少,则会造成频谱较大的失真。 三、实验程序: 本实验采用matlab编写程序,实验中取原信号为 ft=sin(2πfXt)+2sin(10πfXt),取频率f=1kHz,实验程序如下: f=1000;fs=20000;Um=1; N=512;T=1/fs; t=0:1/fs:0.01; ft=Um*sin(2*pi*f*t)+2*Um*sin(10*pi*f*t); subplot(3,1,1); plot(t,ft);grid on; axis([0 0.01 1.1*min(ft) 1.1*max(ft)]); xlabel('t'),ylabel('ft'); title('抽样信号的连续形式'); subplot(3,1,2); stem(t,ft);grid on; axis([0 0.01 1.1*min(ft) 1.1*max(ft)]); xlabel('t'),ylabel('ft');

有关功率谱分析的相关总结

有关功率谱分析的相关总结 谱是个很不严格的东西,常常指信号的Fourier变换,是一个时间平均(time average)概念功率谱的概念是针对功率有限信号的(能量有限信号可用能量谱分析,能量有限的信号通常为能量信号,他们的傅里叶变换是收敛的),所表现的是单位频带内信号功率随频率的变换情况。保留频谱的幅度信息,但是丢掉了相位信息,所以频谱不同的信号其功率谱是可能相同的。有两个重要区别:1。功率谱是随机过程的统计平均概念,平稳随机过程的功率谱是一个确定函数;而频谱是随机过程样本的Fourier变换,对于一个随机过程而言,频谱也是一个“随机过程”。(随机过程有频谱吗?)(随机的频域序列)2。功率概念和幅度概念的差别。此外,只能对宽平稳的各态历经的二阶矩过程谈功率谱,其存在性取决于二阶矩是否存在并且二阶矩的Fourier变换收敛;而频谱的存在性仅仅取决于该随机过程的该样本的Fourier变换是否收敛。 频谱和功率谱的区别在于: (1)信号通常分为两类:能量信号和功率信号; (2)一般来讲,能量信号其傅氏变换收敛(即存在),而功率信号傅氏变换通常不收敛,当然,若信号存在周期性,可引入特殊数学函数(Delta)表征傅氏变换的这种非收敛性;(3)信号是信息的搭载工具,而信息与随机性紧密相关,所以实际信号多为随机信号,这类信号的特点是状态随机性随时间无限延伸,能量无限。换句话说,随机信号大多属于功率信号而非能量信号,它并不存在傅氏变换,亦即不存在频谱; (4)若撇开搭载信息的有用与否,随机信号又称随机过程,很多噪声属于特殊的随机过程,它们的某些统计特性具有平稳性,其均值和自相关函数具有平稳性。对于这样的随机过程,自相关函数蜕化为一维确定函数,前人证明该确定相关函数存在傅氏变换; (5)能量信号频谱通常既含有幅度也含有相位信息;幅度谱的平方(二次量纲)又叫能量谱,它描述了信号能量的频域分布;功率信号的功率谱描述了信号功率随频率的分布特点,也已证明,信号功率谱恰好是其自相关函数的傅氏变换; (6)实际中我们获得的往往仅仅是信号的一段支撑,此时即使信号为功率信号,截断之后其傅氏变换收敛,但此变换结果严格来讲不属于任何“谱”; (7)对于(6)中所述变换若取其幅度平方,可作为信号功率谱的近似,是为经典的“周期图法”; (8)FFT是DFT的快速实现,DFT是DTFT的频域采样,DTFT是FT的频域延拓。人们不得已才利用DFT近似完成本属于FT的任务。若仅提FFT,是非常不专业的。 功率谱是个什么概念?它有单位吗? 随机信号是时域无限信号,不具备可积分条件,因此不能直接进行傅氏变换。一般用具有统计特性的功率谱来作为谱分析的依据。功率谱与自相关函数是一个傅氏变换对。功率谱具有单位频率的平均功率量纲。所以标准叫法是功率谱密度。通过功率谱密度函数,可以看出随机信号的能量随着频率的分布情况。像白噪声就是平行于w轴,在w轴上方的一条直线。功率谱密度,从名字分解来看就是说,观察对象是功率,观察域是谱域,通常指频域,密度,就是指观察对象在观察域上的分布情况。一般我们讲的功率谱密度都是针对平稳随机过程的,由于平稳随机过程的样本函数一般不是绝对可积的,因此不能直接对它进行傅立叶分析。可以有三种办法来重新定义谱密度,来克服上述困难。 一是用相关函数的傅立叶变换来定义谱密度;二是用随机过程的有限时间傅立叶变换来定义

信号处理课设报告——DFT对信号进行谱分析

燕山大学 课程设计说明书 课程名称数字信号原理及应用 题目DFT对信号进行谱分析 学院(系)电气工程学院 年级专业 学号 学生姓名 指导教师 教师职称

电气工程学院《课程设计》任务书 课程名称:数字信号处理课程设计 基层教学单位:仪器科学与工程系指导教师:王娜学号学生姓名(专业)班级 设计题目16、DFT对信号进行谱分析 设计技术参数 ) 2.0 cos( 2 ) ( 1 n n xπ = )] cos( ) 1.0 [cos( 5.0 ) ( 2 n n n xπ π- = ) 10 ( 2 ) ( 21 3 + =-n R n x n 设 计要求选择合适的变换区间长度N,用DFT对上述信号进行谱分析,画出时域波形、幅频特性和相频特性曲线 参考资料数字信号处理方面资料MATLAB方面资料 周次前半周后半周 应完成内容收集消化资料、学习MA TLAB软件, 进行相关参数计算 编写仿真程序、调试 指导教师签字基层教学单位主任签字 说明:1、此表一式四份,系、指导教师、学生各一份,报送院教务科一份。 2、学生那份任务书要求装订到课程设计报告前面。 电气工程学院教务科

目录 一、绪论 (1) 1.1 信号处理简介 (1) 1.2 MATLAB简介 (2) 二、信号处理原理 (4) 2.1 DFT的定义及推导 (4) 2.2 DFT的性质 (6) 2.3 快速傅里叶变换 (7) 三、软件仿真设计 (8) 四、程序设计与结果 (9) 4.1信号1的分析 (9) 4.2信号2的分析 (10) 4.3信号3的分析 (11) 4.4补零计算 (12) 五、设计体会及心得 (15) 参考文献 (16)

用FFT对信号作频谱分析 实验报告

实验报告 实验三:用FFT 对信号作频谱分析 一、 实验目的与要求 学习用FFT 对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便正确应用FFT 。 二、 实验原理 用FFT 对信号作频分析是学习数字信号处理的重要内容,经常需要进行分析的信号是模拟信号的时域离散信号。对信号进行谱分析的重要问题是频谱分辨率D 和分析误差。频谱分辨率直接和FFT 的变换区间N 有关,因为FFT 能够实现的频率分辨率是2π/N ,因此要求2π/N 小于等于D 。可以根据此式选择FFT 的变换区间N 。误差主要来自于用FFT 作频谱分析时,得到的是离散谱,而信号(周期信号除外)是连续谱,只有当N 较大时,离散谱的包络才能逼近连续谱,因此N 要适当选择大一些。 三、 实验步骤及内容(含结果分析) (1)对以下序列进行FFT 分析: x 1(n)=R 4(n) x 2(n)= x 3(n)= 选择FFT 的变换区间N 为8和16两种情况进行频谱分析,分别打印出幅频特性曲线,并进行讨论、分析与比较。 【实验结果如下】: n+1 0≤n ≤3 8-n 4≤n ≤7 0 其它n 4-n 0≤n ≤3 n-3 4≤n ≤7 0 其它 n

实验结果图形与理论分析相符。(2)对以下周期序列进行谱分析: x4(n)=cos[(π/4)*n]

x5(n)= cos[(π/4)*n]+ cos[(π/8)*n] 选择FFT的变换区间N为8和16两种情况进行频谱分析,分别打印出幅频特性曲线,并进行讨论、分析与比较。 【实验结果如下】: (3)对模拟周期信号进行频谱分析: x6(n)= cos(8πt)+ cos(16πt)+ cos(20πt) 选择采样频率Fs=64Hz,FFT的变换区间N为16、32、64三种情况进行频谱分析,分别打印出幅频特性曲线,并进行讨论、分析与比较。 【实验结果如下】:

功率谱,幅度谱,频谱关系

频谱、幅度谱、功率谱和能量谱 在信号处理的学习中,有一些与谱有关的概念,如频谱、幅度谱、功率谱和能量谱等,常常让人很糊涂,搞不清其中的关系。这里主要从概念上厘清其间的区别。 对一个时域信号进行傅里叶变换,就可以得到的信号的频谱,信号的频谱由两部分构成:幅度谱和相位谱。这个关系倒还是简单。那么,什么是功率谱呢?什么又是能量谱呢?功率谱或能量谱与信号的频谱有什么关系呢? 要区分功率谱和能量谱,首先要清楚两种不同类型的信号:功率信号和能量信号。我们从一个具体的物理系统来引出能量信号和功率信号的概念。已知阻值为R的电阻上的电压和电流分别为v(t) 和 i(t),则此电信号的瞬时功率为: p(t) = v2(t)/R = i2(t)R。在作定性分析时,为了方便起见,通常假设电阻R为1欧姆而得到归一化(Normolized) 的功率值。作定量计算时可以通过去归一化,即将实际的电阻值代入即可得到实际的功率值。将上面的概念做一个抽象,对信号 x(t) 定义其瞬时功率为 |f (t)|2,在时间间隔 (-T/2 T/2) 内的能量为: E=int(|f (t)|2 ,-T/2,T/2) (1) 上式表示对|f (t)|2积分,积分限为(-T/2 T/2)。 该间隔内的平均功率为: p = E/T (2) 当且仅当f(t)在所有时间上的能量不为0且有限时,该信号为能量信号,即(1)式中的 T 趋于无穷大的时候E为有限。典型的能量信号如方波信号、三角波信号等。但是有些信号不满足能量信号的条件,如周期信号和能量无限的随机信号,此时就需要用功率来描述这类信号。当且仅当x(t)在所有时间上的功率不为0且有限时,该信号为功率信号,即 (2) 式中 的 T 趋于无穷大的时候 p 为有限。系统中的波形要么具有能量值,要么具有功率值,因为能量有限的信号功率为0,而功率有限的信号能量为无穷大。一般来说,周期信号和随机信号是功率信号,而非周期的确定信号是能量信号。将信号区分为能量信号和功率信号可以简化对各种信号和噪声的数学分析。还有一类信号其功率和能量都是无限的,如 f(t) = t,这类信号很少会用到。 了解信号可能是能量信号,也可能是功率信号后,就可以很好地理解功率谱和能量谱的概念。对于能量信号,常用能量谱来描述。所谓的能量谱,也称为能量谱密度,是指用密度的概念表示信号能量在各频率点的分布情况。也即是说,对能量谱在频域上积分就可以得到信号的能量。能量谱是信号幅度谱的模的平方,其量纲是焦/赫。对于功率信号,常用功率谱来描述。所谓的功率谱,也称为功率谱密度,是指用密度的概念表示信号功率在各频率点的分布情况。也就是说,对功率谱在频域上积分就可以得到信号的功率。从理论上来说,功率谱是信号自相关函数的傅里叶变换。因为功率信号不满足傅里叶变换的条件,其频谱通常不存在,维纳-辛钦定理证明了自相关函数和傅里叶变换之间对应关系。在工程实际中,即便是功率信号,由于持续的时间有限,可以直接对信号进行傅里叶变换,然后对得到的幅度谱的模求平方,再除以持续时间来估计信号的功率谱。 对确定性的信号,特别是非周期的确定性信号,常用能量谱来描述。而对于随机信号,由于持续期时间无限长,不满足绝对可积与能量可积的条件,因此不存在傅立叶变换,所以通常用功率谱来描述。周期性的信号,也同样是不满足傅里叶变换的条件,常用功率谱来描

正余弦信号的谱分析

设计一正余弦信号的谱分析代码: F=input('输入信号频率'); t=0:0.001:0.2; x1=cos(2*pi*F*t); subplot(3,1,1); plot(t,x1); title('x1连续余弦信号'); n=0:31; x2=cos(2*pi*F*n*1/64); subplot(3,1,2),stem(n,x2); xlabel('n'),ylabel('x1(n)'); title('x2采样后的余弦序列'); k=0:31; X=abs(fft(x2,32)); subplot(3,1,3); stem(k,X); xlabel('k'),ylabel('X(k)'); string=[num2str(32),'点FFT幅频曲线']; title(string); 输入信号频率:10 (1)

输入信号频率:11 (2)

代码: N=input('输入谱分析的长度'); n=1:N-1; figure(1) f1=0.22,f2=0.34; x=0.5*sin(2*pi*f1*n)+sin(2*pi*f2*n); subplot(2,1,1),stem(n,x); xlabel('n'),ylabel('x1(n)'); title('余弦序列'); X=abs(fft(x,N)); subplot(2,1,2); k=0:N-1; stem(k,X); xlabel('k'),ylabel('X(k)'); string=[num2str(N),'点FFT幅频曲线']; title(string); figure(2) f1=0.22,f2=0.25; x=0.5*sin(2*pi*f1*n)+sin(2*pi*f2*n); subplot(2,1,1),stem(n,x); xlabel('n'),ylabel('x1(n)'); title('余弦序列'); X=abs(fft(x,N)); subplot(2,1,2); k=0:N-1; stem(k,X); xlabel('k'),ylabel('X(k)'); string=[num2str(N),'点FFT幅频曲线']; title(string);

信号的频谱分析及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? ), 男, 湖南临湘人, 硕士, 湖南理工学院信息与通信工程学院副教授. 主要研究方向: 信号与信息处理

功率谱和功率谱密度的区别

谱让人联想到的Fourier变换,是一个时间平均(time average)概念,对能量就是能量谱,对功率就是功率谱。 功率谱的概念是针对功率有限信号的,所表现的是单位频带内信号功率随频率的变化情况。保留了频谱的幅度信息,但是丢掉了相位信息,所以频谱不同的信号其功率谱是可能相同的。 有两点需要注意: 1. 功率谱是随机过程的统计平均概念,平稳随机过程的功率谱是一个确定函数;而频谱是随机过程样本的Fourier变换,对于一个随机过程而言,频谱也是一个“随机过程”。(随机的频域序列) 2. 功率概念和幅度概念的差别。此外,只能对宽平稳的各态历经的二阶矩过程谈功率谱,其存在性取决于二阶矩是否存在并且二阶矩的Fourier变换收敛;而频谱的存在性仅仅取决于该随机过程的该样本的Fourier变换是否收敛。 频谱分析: 对动态信号在频率域内进行分析,分析的结果是以频率为坐标的各种物理量的谱线和曲线,可得到各种幅值以频率为变量的频谱函数F(ω)。频谱分析中可求得幅值谱、相位谱、功率谱和各种谱密度等等。频谱分析过程较为复杂,它是以傅里叶级数和傅里叶积分为基础的。 功率谱密度: 功率谱密度(PSD),它定义了信号或者时间序列的功率如何随频率分布。这里功率可能是实际物理上的功率,或者更经常便于表示抽象的信号被定义为信号数值的平方,也就是当信号的负载为1欧姆(ohm)时的实际功率。

由于平均值不为零的信号不是平方可积的,所以在这种情况下就没有傅里叶变换。维纳-辛钦定理(Wiener-Khinchin theorem)提供了一个简单的替换方法,如果信号可以看作是平稳随机过程,那么功率谱密度就是信号自相关函数的傅里叶变换。 信号的功率谱密度当且仅当信号是广义的平稳过程的时候才存在。如果信号不是平稳过程,那么自相关函数一定是两个变量的函数,这样就不存在功率谱密度,但是可以使用类似的技术估计时变谱密度。 随机信号是时域无限信号,不具备可积分条件,因此不能直接进行傅氏变换。一般用具有统计特性的功率谱来作为谱分析的依据。 功率谱与自相关函数是一个傅氏变换对。 功率谱具有单位频率的平均功率量纲。所以标准叫法是功率谱密度。从名字分解来看就是说,观察对象是功率,观察域是谱域。 通过功率谱密度函数,可以看出随机信号的能量随着频率的分布情况。像白噪声就是平行于一条直线。 一般我们讲的功率谱密度都是针对平稳随机过程的,由于平稳随机过程的样本函数一般不是绝对可积的,因此不能直接对它进行傅立叶分析。可以有三种办法来重新定义谱密度,来克服上述困难。 1. 用相关函数的傅立叶变换来定义谱密度; 2. 用随机过程的有限时间傅立叶变换来定义谱密度; 3. 用平稳随机过程的谱分解来定义谱密度。 三种定义方式对应于不同的用处,首先第一种方式前提是平稳随机过程不包含周

时间序列分析方法第章谱分析

第六章 谱分析 Spectral Analysis 到目前为止,t 时刻变量t Y 的数值一般都表示成为一系列随机扰动的函数形式,一般的模型形式为: 我们研究的重点在于,这个结构对不同时点t 和τ上的变量t Y 和τY 的协方差具有什么样的启示。这种方法被称为在时间域(time domain)上分析时间序列+∞ ∞-}{t Y 的性质。 假设+∞ ∞-}{t Y 是一个具有均值μ的协方差平稳过程,第j 个自协方差为: 假设这些自协方差函数是绝对可加的,则自协方差生成函数为: 这里z 表示复变量。将上述函数除以π2,并将复数z 表示成为指数虚数形式)ex p(ωi z -=,1-=i ,则得到的结果(表达式)称为变量Y 的母体谱:

注意到谱是ω的函数:给定任何特定的ω值和自协方差j γ的序列+∞ ∞-}{j γ,原则上都可 以计算)(ωY s 的数值。 利用De Moivre 定理,我们可以将j i e ω-表示成为: 因此,谱函数可以等价地表示成为: 注意到对于协方差平稳过程而言,有:j j -=γγ,因此上述谱函数化简为: ω的下面我们考虑)1(MA 过程, 此时:z z θψ+=1)(,则母体谱为: 可以化简成为: 显然,当0>θ时,谱函数)(ωY s 在],0[π内是ω的单调递减函数;当0<θ时,谱函数)(ωY s 在],0[π内是ω的单调递增函数。

对)1(AR 过程而言,有: 这时只要1||<φ,则有:)1/(1)(z z φψ-=,因此谱函数为: 该谱函数的性质为:当0>φ时,谱函数)(ωY s 在],0[π内是ω的单调递增函数;当0<φ时,谱函数)(ωY s 在],0[π内是ω的单调递减函数。 一般地,对),(q p ARMA 过程而言: ) (ωY s 利用上述谱公式,可以实现谱函数与自协方差函数之间的转换。 解释母体谱函数 假设0=k ,则利用命题6.1可以得到时间序列的方差,即0γ,计算公式为: 根据定积分的几何意义,上式说明母体谱函数在区间],[ππ-内的面积就是0γ,也就是过程的方差。

信号的频谱分析

实验三信号的频谱分析 方波信号的分解与合成实验 一、任务与目的 1. 了解方波的傅立叶级数展开和频谱特性。 2. 掌握方波信号在时域上进行分解与合成的方法。 3. 掌握方波谐波分量的幅值和相位对信号合成的影响。 二、原理(条件) PC机一台,TD-SAS系列教学实验系统一套。 1. 信号的傅立叶级数展开与频谱分析 信号的时域特性和频域特性是对信号的两种不同的描述方式。对于一个时域的周期信号f(t),只要满足狄利克莱条件,就可以将其展开成傅立叶级数: 如果将式中同频率项合并,可以写成如下形式: 从式中可以看出,信号f(t)是由直流分量和许多余弦(或正弦)分量组成。其中第一项A0/2是常数项,它是周期信号中所包含的直流分量;式中第二项A1cos(Ωt+φ1)称为基波,它的角频率与原周期信号相同,A1是基波振幅,φ1是基波初相角;式中第三项A2cos(Ωt+φ2)称为二次谐波,它的频率是基波的二倍,A2是基波振幅,φ2是基波初相角。依此类推,还有三次、四次等高次谐波分量。 2. 方波信号的频谱 将方波信号展开成傅立叶级数为: n=1,3,5… 此公式说明,方波信号中只含有一、三、五等奇次谐波分量,并且其各奇次谐波分量的幅值逐渐减小,初相角为零。图3-1-1为一个周期方波信号的组成情况,由图可见,当它包含的分量越多时,波形越接近于原来的方波信号,还可以看出频率较低的谐波分量振幅较大,它们组成方波的主体,而频率较高的谐波分量振幅较小,它们主要影响波形的细节。

(a)基波(b)基波+三次谐波 (c)基波+三次谐波+五次谐波 (d)基波+三次谐波+五次谐波+七次谐波 (e)基波+三次谐波+五次谐波+七次谐波+九次谐波 图3-1-1方波的合成 3. 方波信号的分解 方波信号的分解的基本工作原理是采用多个带通滤波器,把它们的中心频率分别调到被测信号的各个频率分量上,当被测信号同时加到多路滤波器上,中心频率与信号所包含的某次谐波分量频率一致的滤波器便有输出。在被测信号发生的实际时间内可以同时测得信号所包含的各频率分量。本实验便是采用此方法,实验中共有5路滤波器,分别对应方波的一、三、五、七、九次分量。 4. 信号的合成 本实验将分解出的1路基波分量和4路谐波分量通过一个加法器,合成为原输入的方波信号,信号合成电路图如图3-1-2所示。 图3-1-2 三、内容与步骤 本实验在方波信号的分解与合成单元完成。 1. 使信号发生器输出频率为100Hz、幅值为4V的方波信号,接入IN端。 2. 用示波器同时测量IN和OUT1端,调节该通路所对应的幅值调节电位器,使该通路输出方波的基波分量,基波分量的幅值为方波信号幅值的4/π倍,频率于方波相同并且没有相位差.(注意:出厂时波形调节电位器已调到最佳位置,其波形基本不失真,基本没有相位差。若实验中发现存在波形失真或有相位差的现象,请适当调节波形调节电位器,使波形恢复正常。) 3. 用同样的方法分别在OUT3、OUT5、OUT7、OUT9端得到方波的三、五、七、九此谐波分量(注意其他谐波分量各参数应当满足式3-1-1所示)。 4. 完成信号的分解后,先后将OUT1与IN1、OUT3与IN2、OUT5与IN3、OUT7与IN4、OUT9与IN5连接起来,即进行谐波叠加(信号合成),分别测量(1)基波与三次谐波;(2)基波、三次谐波与五次谐波;(3)基波、三次谐波、五次谐波与七次谐波;(4)基波、三次谐波、五次谐波、七次谐波与九次谐波合成后的波形。并分别保

matlab 正弦波 高斯白噪声 均匀白噪声 功率谱密度 自相关函数

现代通信原理作业一 姓名:张英伟学号:8036 班级:13级理工部3班 利用matlab完成: ●产生正弦波信号、均匀白噪声以及高斯白噪声并分别将两种噪声叠加到正弦 波信号上,绘出波形。 ●分别求取均匀白噪声序列和高斯白噪声序列的自相关及功率谱密度,绘出波 形。 一、白噪声区别及产生方法 1、定义: 均匀白噪声:噪声的幅度分布服从均匀分布,功率谱密度在整个频域内均匀分布的噪声。 高斯白噪声:噪声的幅度分布服从正态分布,功率谱密度在整个频域内均匀分布的噪声。 2、matlab仿真函数: rand函数默认产生是区间在[0,1]的随机数,这里需要利用公式: z2=a+(b-(a))*rand(m,n)............(公式1) randn函数默认产生均值是0、方差是1的随机序列,所以可以用其来产生均值为0、方差为1的正态分布白噪声,即N(0,12)。利用公式: z1=a+b*randn(1,n).................(公式2) 可以产生均值为a,方差为b2 高斯白噪声,即N(a,b2)。 二、自相关函数与功率谱密度之间的关系 1、功率谱密度:每单位频率波携带的功率,这被称为信号的功率谱密度。 2、自相关函数:描述随机信号X(t)在任意两个不同时刻t1,t2的取值之间的相关程度。 3、维纳-辛钦定理: 由于平均值不为零的信号不是平方可积的,所以在这种情况下就没有傅里叶变换。幸运的是维纳-辛钦定理提供了一个简单的替换方法,如果信号可以看作是平稳随机过程,那么功率谱密度就是信号自相关函数的傅里叶变换。 4、平稳随机过程:是在固定时间和位置的概率分布与所有时间和位置的概率分布相同的随机过程。(就是指得仅一个随机过程,中途没有变成另外一个统计特性的随机过程)

脑电信号功率谱

数字信号处理作业 1.两个导联C3,C4位置的脑电信号(已预处理),实验采样频率为 250Hz,每次实验采集8秒数据,总共做了36次实验。依次求出C3,C4位置第1秒~第8秒数据的功率谱。 clc clear load('C:\Users\刘冰\Desktop\数字信号处理\matlab\C3C4.mat') a(1:8,1:512)=zeros(); for j=1:8 for k=0:35; z=fft(Left_C3(((j-1)*250+1+2000*k):(2000*k+j*250)),512); %截取特定的一段数据进行傅里叶变换 a(j,:)=p(j,:)+z.*conj(z)/512; %求其功率谱end a(j,:)=p(j,:)./36;%求平均值 end p(1:8,1:512)=zeros(); for j=1:8 for k=0:35; z=fft(Left_C4((j-1)*250+1+2000*k:2000*k+j*250),512); 、%截取特定的一段数据进行傅里叶变换 p(j,:)=q(j,:)+z.*conj(z)/512; end p(j,:)=q(j,:)./36; end for i=1:8 w=0:2*pi/255:2*pi; figure plot(w/pi,p(i,1:256),'b',w/pi,q(i,1:256),'r')%在一幅图里面显示C3C4功率谱,因为其结果是对称的,所以只取前一半结果 legend('C3','C4');%线段标题

title(['第',num2str(i), '秒 C3、C4脑电功率谱对照']) end 0.20.40.60.81 1.2 1.4 1.6 1.82 0100 200 300 400 500 600 700 第1秒 C3、C4脑电功率谱对照

功率谱密度

功率谱密度 不同形式的数字基带信号具有不同的频谱结构,分析数字基带信号的频谱特性,以便合理地设计数字基带信号,使得消息代码变换为适合于给定信道传输特性的结构,是数字基带传输必须考虑的问题。 在通信中,除特殊情况(如测试信号)外,数字基带信号通常都是随机脉冲序列。因为,如果在数字通信系统中所传输的数字序列是确知的,则消息就不携带任何信息,通信也就失去了意义。故我们面临的是一个随机序列的谱分析问题。 考察一个二进制随机脉冲序列。设脉冲、分别表示二进制码“0”和“1”, 为 码元的间隔,在任一码元时间内,和出现的概率分别为p和1-p。 则随机脉冲序列x(t)可表示成: 其中 研究由上面二式所确定的随机脉冲序列的功率谱密度,要用到概率论与随机过程的有关知识。可以证明,随机脉冲序列x(t)的双边功率谱公式(1): 其中、分别为、的傅氏变换,。 可以得出如下结论: (1)随机脉冲序列功率谱包括两部分:连续谱(第一项)和离散谱(第二项)。对于连续谱而言,由于代表数字信息的及不能完全相同,故,因此,连 续谱总是存在;而对于离散谱而言,则在一些情况下不存在,如及是双极性的脉冲,且出现概率相同时。 (2)当、、p及给定后,随机脉冲序列功率谱就确定了。 上式的结果是非常有意义的,它一方面能使我们了解随机脉冲序列频谱的特点,以及如何去具体地计算它的功率谱密度;另一方面根据它的离散谱是否存在这一特点,将使我们明确能否从脉冲序列中直接提取离散分量,以及采取怎样的方法可以从基带脉冲序列中获得所需的离散分量。这一点,在研究位同步、载波同步等问题时,将是十分重要的;再一方面,根据它的连续谱可以确定序列的带宽(通常以谱的第一个零点作为序列的带宽)。 下面,以矩形脉冲构成的基带信号为例,通过几个有代表性的特例对功率谱密度公式的应用及意义做进一步的说明,其结果对后续问题的研究具有实用意义。

数字信号处理课程设计正余弦信号的谱分析

指导教师: 日期: 《数字信号处理》课程设计 题目:正余弦信号的谱分析 姓名: 院系:电子信息工程系 专业:通信工程 班级:通信091 学号: 指导教师: 2012年6 月

正余弦信号的谱分析 (电子信息工程学系 指导教师:留黎钦) 中文摘要:使用MATLAB 软件,通过编写程序,对正余弦信号进行傅里叶变换。用DFT 和FFT 实现对正余弦信号的 谱分析,并且分析DFT 长度对频谱的影响。 关键词:matlab ; 傅里叶变换; DFT; FFT; 一、概述 数字信号处理方法的一个重要用途是在离散时间域中确定一个连续时间信号的频谱,通常称为频谱分析,更具体的说,它也包括确定能量谱或功率谱。数字频谱分析可以应用在很广阔的领域。 二、设计目的 1.用DFT 实现对正余弦信号的谱分析; 2.观察DFT 长度和窗函数长度对频谱的影响; 3.对DFT 进行谱分析中的误差现象获得感性认识。 三、设计原理 1、谱分析原理 频谱分析方法是基于以下的观测:如果连续时间信号)(t g a 是频带有限的,那么对其离散时间等效信号)(n g 的DFT 进行谱分析。它的离散时间等效物g(n)应当能给出a g (t)频谱的一个很近似的估计两者之间只差一个带数因子T 。然而,在大多数情况下,)(t g a 是在∞<<∞-t 范围内定义的,因此)(n g 也就定义在∞<<∞-n 的无线范围内,要估计一个无限长信号的频谱是不可能的。实用的方法是:先让模拟连续信号)(t g a 通过一个抗混叠的模拟滤波器,然后把它采样成一个离散序列)(n g 。假定反混叠滤波器的设计是正确的,则混叠效应可以忽略,又假设A/D 变换器的字长足够长,则A/D 变换中的量化噪声也可忽略。 假定表征正余弦信号的基本参数,如振幅、频率和相位不随时间改变,则此信号的傅立叶变换 )(ωj e G 可以用计算它的DTFT 得到 ∑∞ -∞ =-= n n j j e n g e G ωω )()( (1) 实际上无限长序列)(n g 首先乘以一个长度为M 的窗函数)(n w ,使它变成一个长为M 的有限长序列, )()()(1n w n g n g =,对)(1n g 求出的DTFT )(1ωj e G 应该可以作为原连续模拟信号)(t g a 的频谱估计, 然后求出)(1ω j e G 在πω20≤≤区间等分为N 点的离散傅立叶变换DFT 。为保证足够的分辨率,DFT 的 长度N 选的比窗长度M 大,其方法是在截断了的序列后面补上N -M 个零。计算采用FFT 算法。 更详细地考察一下上面的方法。这样才能了解它的限制,并正确利用它所得出的结果。特别要分析加窗的效果,以及和由DFT 样本来估计DTFT 频率采样值的问题。 在讨论由)(1k G 来估计频谱)(1jw e G 和)(jw e G 时,需要重新探讨一下这些变换和它们所对应的频

信号的频谱分析及MATLAB实现

信号的频谱分析及MATLAB 实现(实例) 摘自:张登奇,杨慧银.信号的频谱分析及MATLAB 实现[J].湖南理工学院学报(自然科学版),2010,(03) 摘 要:DFT 是在时域和频域上都已离散的傅里叶变换,适于数值计算且有快速算法,是利用计算机实现信号频谱分析的常用数学工具。文章介绍了利用DFT 分析信号频谱的基本流程,重点阐述了频谱分析过程中误差形成的原因及减小分析误差的主要措施,实例列举了MATLAB 环境下频谱分析的实现程序。通过与理论分析的对比,解释了利用DFT 分析信号频谱时存在的频谱混叠、频谱泄漏及栅栏效应,并提出了相应的改进方法。 关键词:MATLAB ;频谱分析;离散傅里叶变换;频谱混叠;频谱泄漏;栅栏效应 3 分析实例 对信号进行频谱分析时,由于信号不同,傅里叶分析的频率单位也可能不同,频率轴有不同的定标方式。为了便于对不同信号的傅里叶分析进行对比,这里统一采用无纲量的归一化频率单位,即模拟频率对采样频率归一化;模拟角频率对采样角频率归一化;数字频率对2π归一化;DFT 的k 值对总点数归一化。同时,为了便于与理论值进行对比,理解误差的形成和大小,这里以确定信号的幅度谱分析为例进行分析说明。假设信号为:)()(t u e t x t -=,分析过程:首先利用CTFT 公式计算其模拟频谱的理论值;然后对其进行等间隔理想采样,得到)(n x 序列,利用DTFT 公式计算采样序列的数字连续频谱理论值,通过与模拟频谱的理论值对比,理解混叠误差形成的原因及减小误差的措施;接下来是对)(n x 序列进行加窗处理,得到有限长加窗序列)(n xw ,再次利用DTFT 公式计算加窗后序列)(n xw 的数字连续频谱,并与加窗前)(n x 的数字连续频谱进行对比,理解截断误差形成的原因及减小误差的措施;最后是对加窗序列进行DFT 运算,得到加窗后序列)(n xw 的DFT 值,它是对)(n xw 数字连续频谱进行等间隔采样的采样值,通过对比,理解栅栏效应及DFT 点数对栅栏效应的影响。利用MATLAB 实现上述分析过程的程序如下: clc;close all;clear; %CTFT 程序,以x(t)=exp(-t) t>=0 为例 %利用数值运算计算并绘制连续信号波形 L=4, %定义信号波形显示时间长度 fs=4,T=1/fs; %定义采样频率和采样周期 t_num=linspace(0,L,100);%取若干时点,点数决定作图精度 xt_num=exp(-1*t_num);%计算信号在各时点的数值 subplot(3,2,1);plot(t_num,xt_num),%绘信号波形 xlabel('时间(秒)'),ylabel('x(t)'),%加标签 grid,title('(a) 信号时域波形'),%加网格和标题 %利用符号运算和数值运算计算连续信号幅度谱的理论值 syms t W %定义时间和角频率符号对象 xt=exp(-1*t)*heaviside(t),%连续信号解析式 XW=fourier(xt,t,W),%用完整调用格式计算其傅氏变换 %在0两边取若干归一化频点,点数决定作图精度 w1=[linspace(-0.5,0,50),linspace(0,1.5,150)];

滤波与功率谱估计

清华大学 《数字信号处理》期末作业 2013 年 1 月

第一题掌握去噪的方法 1.1 题目描述 MATLAB 中的数据文件noisdopp 含有噪声,该数据的抽样频率未知。调出该数据,用你学过的滤波方法和奇异值分解的方法对其去噪。要求:1.尽可能多地去除噪声,而又不损害原信号; 2.给出你去噪的原理与方法;给出说明去噪效果的方法或指标; 3.形成报告时应包含上述内容及必要的图形,并附上原程序。 1.2 信号特性分析 MATLAB所给noisdopp信号极其频域特征如图1.1、图1.2。 图1.1含有噪声的noisdopp信号

图1.2 noisdopp 信号频域特性 其中横坐标f 采用归一化频率,即未知抽样频率Fs 对应2(与滤波器设计时参数一致)。信号基本特性是一个幅值和频率逐渐增加的正弦信号叠加噪声,噪声为均匀的近似白噪声,没有周期等特点。 因为噪声信号能量在全频带均匀分布,滤波器截止频率过低则信号损失大,过高则噪声抑制小,认为频谱中含有毛刺较多的部分即为信噪比较小的部分,滤除这部分可以达到较好的滤波效果。 先给定去噪效果的评定指标。信号开始阶段频率较高(如图1.3,红圈为信号值),一周期内采样点4~5个,即信号归一化频率达到0.4~0.5(Fs=2),难以从频域将这部分信号同噪声分离,滤波后信号损失较大,故对前128点用信噪比考察其滤波效果,定义: 2 2 () 10lg (()()) k k x k SN R y k x k =-∑∑ 其中,()x k 为原nosidopp 信号,()y k 为滤波后信号。SNR 越大表示滤除部分能力越小,可以反映滤波后信号对原信号的跟踪能力,对前128点主要考察SNR ,越大滤波器性能越好。

应用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);

相关文档
最新文档