信号频域分析研究性学习报告 1文档格式.docx

上传人:b****6 文档编号:15855879 上传时间:2022-11-16 格式:DOCX 页数:19 大小:293.91KB
下载 相关 举报
信号频域分析研究性学习报告 1文档格式.docx_第1页
第1页 / 共19页
信号频域分析研究性学习报告 1文档格式.docx_第2页
第2页 / 共19页
信号频域分析研究性学习报告 1文档格式.docx_第3页
第3页 / 共19页
信号频域分析研究性学习报告 1文档格式.docx_第4页
第4页 / 共19页
信号频域分析研究性学习报告 1文档格式.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

信号频域分析研究性学习报告 1文档格式.docx

《信号频域分析研究性学习报告 1文档格式.docx》由会员分享,可在线阅读,更多相关《信号频域分析研究性学习报告 1文档格式.docx(19页珍藏版)》请在冰豆网上搜索。

信号频域分析研究性学习报告 1文档格式.docx

也可以利用MATLAB提供的函数fft计算。

【题目分析】:

对声音信号的采集以及对该信号进行时域和频域的分析

【仿真程序】

[Y,FS,NBITS,OPTS]=WAVREAD('

F:

\boy.wav'

);

X=length(Y);

T=10;

k1=T/(X-1);

k2=0:

X-1;

k=0:

k1:

T;

subplot(2,2,1);

plot(k,Y)

title('

男声,时域'

FY=fft(Y,X);

omega=2*pi/X*k2;

subplot(2,2,2);

plot(omega,abs(FY));

男声,频域'

wavplay(Y,FS)

\girl.wav'

subplot(2,2,3);

女生,时域'

subplot(2,2,4);

女生,频域'

【仿真结果】

【阅读文献】

1、《信号与系统》陈后金胡建薛健编著

2、杜晶晶信号与系统实训指导M西安电子科技大学

【发现问题】(专题研讨或相关知识点学习中发现的问题):

现在要处理一段基波频率变化范围在45~65Hz的信号,但采样频率只能固定为2.4KHz,不能跟随信号作同步采样。

该如何对该信号进行频谱分析?

【问题探究】

1、单周期信号的DFT。

对基波一个周期内的采样点数据进行DFT分析,但这样会多一个分点;

采取最后一个分点修正的措施,对于基波的幅值结果还可以,但对于谐波以及相位结果,结果就很差了。

并且这种修正方法我至今都没有找到理论根据。

2、FFT时域加窗频域插值,这种方法讨论得比较多。

但它得频率变化范围太有限。

根本不能满足45~65Hz这样的一个变化范围。

3、采样数据插值。

这种方法就是把采样数据重新抽样,人为地作到同步采样,但这种方法比较烦琐,同时精度也有限。

 

4、上面三种方法实在不行的话,那就只能采用同步采样了,先计算频率,然后再同步采样。

2.信号的抽样

频率为f0Hz的正弦信号可表示为

按抽样频率fsam=1/T对x(t)抽样可得离散正弦序列x[k]

在下面的实验中,取抽样频率fsam=8kHz。

(1)对频率为2kHz,2.2kHz,2.4kHz和2.6kHz正弦信号抽样1秒钟,利用MATLAB函数sound(x,fsam)播放这四个不同频率的正弦信号。

(2)对频率为5.4kHz,5.6kHz,5.8kHz和6.0kHz正弦信号抽样1秒钟,利用MATLAB函数sound(x,fsam)播放这四个不同频率的正弦信号。

(3)比较

(1)和

(2)的实验结果,解释所出现的现象。

【题目分析】

(1)正弦信号是一种机械波的模拟,是由振动产生的,因此,可以通过sound函数播放出声音。

(2)要想做到抽样1秒钟,就必须注意k的取值范围,即k的取值范围为0~8000。

(3)用stem函数画出抽样后离散的点。

【比较研究】

利用系统的Help,阅读函数sound和wavplay的使用方法。

连续播放两段音频信号,比较函数sound和wavplay的异同。

1:

8000;

f0=input('

f0='

fs=8000;

x=sin(2*pi*f0/fs*k);

sound(x,fs);

subplot(211)

stem(k,x)

axis([020-11])

subplot(212)

plot(k,x)

2KHz

2.2KHz

2.4KHz

2.6KHz

现象:

随着声音频率的变大,声音在逐渐变得尖细且高。

5.4KHz

5.6KHz

5.8KHz

随着声音频率的变大,声音逐渐变得粗犷且低沉

【结果的理论分析和解释】

频率同在增大,产生两个不同的现象,是因为离散时域信号的频域是以2

为周期的,在抽样频率较小时,在频域上会出现频域的非零值叠加(即混叠),此时随着抽样频率的增加,叠加部分减少,并且使频谱向

的奇数倍移动,高频分量增加,声音变得尖一些;

而在抽样频率接近信号的频率时,由于频谱的周期性,此时频谱是会随着抽样频率的增加向

的偶数倍方向移动,高频分量减少,声音变得低沉。

只有符合时域抽样定理的抽样,才不会发生混叠,即抽样的最小频率为2fm。

【自主学习内容】

(1)Input函数、sound函数、stem函数的用法。

(2)奈奎斯特抽样定理在MATLAB仿真中的应用。

(3)MATLAB中对信号进行傅里叶变换的函数fft的用法。

(1)《信号与系统》陈后金胡建薛健编著

(2)《MATLAB处理音频信号》

3.连续时间信号Fourier变换的数值近似计算

计算连续信号频谱是对信号和系统进行频域分析的基础,由于实际信号大多无简单的解析表达式,所以要用数值方法进行近似计算。

本题要求对频谱近似计算中误差的原因进行初步的分析,希望能在计算实际信号频谱的近似计算中起一定的指导作用。

若信号x(t)的非零值在

区间,则可用下面提供的函数ctft1或ctft2近似计算其频谱。

函数ctft的调用形式为

[X,f]=ctft1(x,fsam,N)

[X,f]=ctft2(x,fsam,N)

其中调用变量x存放信号x(t)的抽样值,fsam表示对连续信号x(t)的抽样频率(Hz),N表示用DFT进行近似计算时DFT的点数,为了能高效的进行计算,N最好取2的整数次幂,如512,1024等。

返回变量X是计算出的信号频谱的抽样值,f(单位Hz)表示对应的频率抽样点。

返回变量X一般是复数,可用函数abs(X)计算出幅度谱,函数angle(X)计算出相位谱。

(1)阅读程序ctft2,叙述该程序的基本原理。

该程序中有一处需要产生一个大的2维矩阵,指出该行程序,并评价该方法的优缺点。

(2)取抽样频率fsam=100Hz,信号抽样长度N=1024,分别用两个子程序近似计算信号

的频谱,比较两种方法的计算时间和误差;

(可用tic,toc计算程序运行时间)

(3)若将信号的时域有效宽度

定义为

其中

表示信号在时域的最大值。

试分析时域有效宽度

对近似计算的影响。

给出一个由信号时域有效宽度

估计近似计算中所需信号长度

的经验公式。

(4)定义信号频域有效宽度

表示信号在频域的最大值。

给出一个由信号频域有效宽度

估计近似计算中所需抽样频率

(5)用计算机录分别一段男生和女生的语音信号,计算其频谱并比较其特点。

(6)讨论:

计算误差产生的主要原因?

如果不知信号的解析表达式,如何分析计算误差?

%近似计算连续信号频谱的函数

function[X,f]=ctft1(x,Fs,N)

X=fftshift(fft(x,N))/Fs;

f=-Fs/2+(0:

N-1)*Fs/N;

function[X,f]=ctft2(x,Fs,N)

tk=(0:

N-1)/Fs;

%时域抽样点

dF=Fs/N;

%频域抽样间隔

fm=(0:

N/2)*dF;

%频域抽样点

X=x*exp(-j*2*pi*tk'

*fm)/Fs;

%近似计算信号频谱

f=[-fliplr(fm(2:

end))fm];

%增添负频率点

X=[-conj(fliplr(X(2:

end)))X];

%增添频率点对应的频谱

对连续时间函数的近似傅里叶变换。

先要定义ctft函数,然后调用。

(2)ctft1.m

Untiled2.m

0.01:

15;

x=exp(-1*k);

[X,f]=ctft1(x,100,1024);

figure

(1);

subplot(2,1,1);

plot(f,abs(X));

abs(X)'

subplot(2,1,2);

plot(f,angle(X));

angle(X)'

P=1./(1+j*f);

Untiled3.m

plot(f,abs(P));

xlabel('

f(Hz)'

plot(f,angle(P));

figure(3);

plot(f,abs(P)-abs(X));

幅度误差'

axis([-5,5,-0.01,0.02])

plot(f,angle(P)-angle(X));

相位误差'

(4)x(t)频域有效宽度为

约为1.58,

为175HZ,

,所以两者之间的经验公式为:

(5)

男声

[x1,fs,bits]=wavread('

\man.wav'

[X,f]=ctft1(x1,100,1024);

subplot(3,1,1);

幅度'

subplot(3,1,2);

相位'

subplot(3,1,3);

plot(f,X);

频谱'

女声

\woman.wav'

(6)运用ctft近似计算信号频谱时,是以一定的抽样频率对原信号进行了抽取,信号由连续信号变成离散信号,如果抽样频率不合适就会造成信号混叠而失真。

在不知道信号表达式

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1