测试信号实验报告.docx

上传人:b****2 文档编号:11530053 上传时间:2023-06-01 格式:DOCX 页数:13 大小:194.93KB
下载 相关 举报
测试信号实验报告.docx_第1页
第1页 / 共13页
测试信号实验报告.docx_第2页
第2页 / 共13页
测试信号实验报告.docx_第3页
第3页 / 共13页
测试信号实验报告.docx_第4页
第4页 / 共13页
测试信号实验报告.docx_第5页
第5页 / 共13页
测试信号实验报告.docx_第6页
第6页 / 共13页
测试信号实验报告.docx_第7页
第7页 / 共13页
测试信号实验报告.docx_第8页
第8页 / 共13页
测试信号实验报告.docx_第9页
第9页 / 共13页
测试信号实验报告.docx_第10页
第10页 / 共13页
测试信号实验报告.docx_第11页
第11页 / 共13页
测试信号实验报告.docx_第12页
第12页 / 共13页
测试信号实验报告.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

测试信号实验报告.docx

《测试信号实验报告.docx》由会员分享,可在线阅读,更多相关《测试信号实验报告.docx(13页珍藏版)》请在冰点文库上搜索。

测试信号实验报告.docx

测试信号实验报告

 

测试信号实验报告

 

实验一

一实验目的

1.在理论学习的基础上,通过本次试验,加深对快速傅里叶变换的理解,熟悉FFT算法及其程序的编写。

2.应用FFT对信号进行频谱分析。

3.了解应用FFT进行信号频谱分析过程中可能出现的问题,以便今后能在实际中应用FFT。

二实验内容

1.用Matlab产生正弦波,矩形波,以及白噪声信号,并显示各自时域波形图

2.进行FFT变换,显示各自频谱图,其中采样率,频率、数据长度自选

3.做出上述三种信号的均方根图谱,功率图谱,以及对数均方根图谱

4.用IFFT傅立叶反变换恢复信号,并显示恢复的正弦信号时域波形图源程序

三实验原理

在各种信号序列中,有限长序列占有重要地位。

对有限长序列,可以利用离散傅里叶变换(DFT)进行分析。

DFT不但可以很好地反映序列的频谱特性,而且易于用快速算法(FFT)在计算机上实现。

有限长序列的DFT是其Z变换在单位圆上的等距采样,或者说是序列傅里叶变换的等距采样,因此可以用于序列的谱分析。

FFT是DFT的一种快速算法,它是对变换式进行一次次分解,使其成为若干小点数的组合,从而减少运算量。

常用的FFT是以2为基数的,其长度N。

它的效率高,程序简单,使用方便。

当要变换的序列长度不等于2的整数次方时,为了使用以2为基数的FFT,可以用末尾补零的方法,使其长度延长至2的整数次方。

在MATLAB中,可用函数FFT来实现,其调用格式为

y=FFT(x)或y=FFT(x,N)

y=FFT(x)为利用FFT算法计算矢量的离散傅里叶变换,当x为矩阵时,y为矩阵x每一列的FFT。

当x的长度为2的整数次方时,则FFT函数采用基2的算法,否则采用稍慢的混合基算法。

y=FFT(x,N)采用N点FFT。

当x的长度小于N时,FFT函数在x的尾部补零,以构成N点数据;当x的长度大于N>时,FFT会截断序列x。

四试验程序

%***************1.正弦波****************%

fs=100;%设定采样频率

N=128;

n=0:

N-1;

t=n/fs;

f0=10;

x=sin(2*pi*f0*t);

figure

(1);

subplot(231);

plot(t,x);

xlabel('t');

ylabel('y');

title('正弦信号y=2*pi*10t时域波形');

grid;

%进行FFT变换并做频谱图

y=fft(x,N);%进行fft变换

mag=abs(y);%求幅值

f=(0:

length(y)-1)'*fs/length(y);

figure

(1);

subplot(232);

plot(f,mag);

axis([0,100,0,80]);

xlabel('频率(Hz)');

ylabel('幅值');

title('正弦信号y=2*pi*10t幅频谱图N=128');

grid;

sq=abs(y);

figure

(1);

subplot(233);

plot(f,sq);

xlabel('频率(Hz)');

ylabel('均方根谱');

title('正弦信号y=2*pi*10t均方根谱');

grid;

power=sq.^2;

figure

(1);

subplot(234);

plot(f,power);

xlabel('频率(Hz)');

ylabel('功率谱');

title('正弦信号y=2*pi*10t功率谱');

grid;

ln=log(sq);

figure

(1);

subplot(235);

plot(f,ln);

xlabel('频率(Hz)');

ylabel('对数谱');

title('正弦信号y=2*pi*10t对数谱');

grid;

xifft=ifft(y);

magx=real(xifft);

ti=[0:

length(xifft)-1]/fs;

figure

(1);

subplot(236);

plot(ti,magx);

xlabel('t');

ylabel('y');

title('通过IFFT转换的正弦信号波形');

grid;

%****************2.矩形波****************%

fs=10;%设定采样频率

t=-5:

0.1:

5;

x=rectpuls(t,2);

x=x(1:

99);

figure

(2);

subplot(231);

plot(t(1:

99),x);%作矩形波的时域波形

xlabel('t');

ylabel('y');

title('矩形波时域波形');

grid;

%进行FFT变换并做频谱图

y=fft(x);%进行fft变换

mag=abs(y);%求幅值

f=(0:

length(y)-1)'*fs/length(y);%进行对应的频率转换

figure

(2);

subplot(232);

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

xlabel('频率(Hz)');

ylabel('幅值');

title('矩形波幅频谱图');

grid;

%求均方根谱

sq=abs(y);

figure

(2);

subplot(233);

plot(f,sq);

xlabel('频率(Hz)');

ylabel('均方根谱');

title('矩形波均方根谱');

grid;

%求功率谱

power=sq.^2;

figure

(2);

subplot(234);

plot(f,power);

xlabel('频率(Hz)');

ylabel('功率谱');

title('矩形波功率谱');

grid;

%求对数谱

ln=log(sq);

figure

(2);

subplot(235);

plot(f,ln);

xlabel('频率(Hz)');

ylabel('对数谱');

title('矩形波对数谱');

grid;

%用IFFT恢复原始信号

xifft=ifft(y);

magx=real(xifft);

ti=[0:

length(xifft)-1]/fs;

figure

(2);

subplot(236);

plot(ti,magx);

xlabel('t');

ylabel('y');

title('通过IFFT转换的矩形波波形');

grid;

%****************3.白噪声****************%

fs=10;%设定采样频率

t=-5:

0.1:

5;

x=zeros(1,100);

x(50)=100000;

figure(3);

subplot(231);

plot(t(1:

100),x);%作白噪声的时域波形

xlabel('t');

ylabel('y');

title('白噪声时域波形');

grid;

%进行FFT变换并做频谱图

y=fft(x);%进行fft变换

mag=abs(y);%求幅值

f=(0:

length(y)-1)'*fs/length(y);%进行对应的频率转换

figure(3);

subplot(232);

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

xlabel('频率(Hz)');

ylabel('幅值');

title('白噪声幅频谱图');

grid;

%求均方根谱

sq=abs(y);

figure(3);

subplot(233);

plot(f,sq);

xlabel('频率(Hz)');

ylabel('均方根谱');

title('白噪声均方根谱');

grid;

%求功率谱

power=sq.^2;

figure(3);

subplot(234);

plot(f,power);

xlabel('频率(Hz)');

ylabel('功率谱');

title('白噪声功率谱');

grid;

%求对数谱

ln=log(sq);

figure(3);

subplot(235);

plot(f,ln);

xlabel('频率(Hz)');

ylabel('对数谱');

title('白噪声对数谱');

grid;

%用IFFT恢复原始信号

xifft=ifft(y);

magx=real(xifft);

ti=[0:

length(xifft)-1]/fs;

figure(3);

subplot(236);

plot(ti,magx);

xlabel('t');

ylabel('y');

title('通过IFFT转换的白噪声波形');

grid;

五实验结果图

正弦信号频谱图

图1正弦信号的时域波形图2正弦信号的幅频谱图图3正弦信号的均方根谱

图4正弦信号的功率谱图5正弦信号的对数谱图6用IFFT转换的正弦信号波形

矩形波

图1矩形波的时域波形图2矩形波的幅频谱图图3矩形波的均方根谱

图4矩形波的功率谱图5矩形波的对数谱图6用IFFT转换的矩形波波形

白噪声

图1白噪声的时域波形图2白噪声的幅频谱图图3白噪声的均方根谱

图4白噪声的功率谱图5白噪声的对数谱图6用IFFT转换的白噪声波形

六实验感想

通过这一次Matlab的实验,让我对Matlab在系统设计与处理系统中的应用有了一定的了解,使我意识到实践是非常重要的,也让我我对FFT与IFFT有了进一步的理解,并了解到正弦波,矩形波和白噪声的各种图谱。

通过改变三个程序的采样频率,输入波形的种类(正弦波,矩形,白噪声),频率,数据长度等等数据,输出了要求的不同图形,可以更直观的知道FFT算法的实用性,也对其算法进行了验证。

而自从快速傅里叶变换(FFT)出现以后,频谱分析技术便很快的发展起来,而且越来越贴近我们的生活生产,如医疗器械,无线电通信等等,但是我们并未对频谱分析技术的研究达到最高的层次,未来发展具有很广阔的的空间。

对于我们测控技术与仪器专业来说,对信号的处理和分析在今后的学习,生活甚至是工作中都占有很重要的一部分,所以,在以后的学习中,我们更应该加强这一方面的专业知识,拓宽我们的视野,为以后的更好的生活工作努力。

 

实验二利用冲激响应不变法设计巴特沃斯高通数字滤波器

一、实验目的

1、掌握不同函数对傅里叶变换程序的编写。

2、联系Matlab编程。

3、熟悉巴特沃斯高通数字滤波器。

二、实验内容

1、利用Matlab软件显示巴特沃斯数字滤波器的图谱。

2、分析图谱,并从图中得到相关数据。

三、实验原理

设计IIR高通数字滤波器时,有两种方法。

一是先设计一个原型低通模拟滤波器,然后通过模拟滤波器的频率变化,转换成高通模拟滤波器。

另一种方法是先设计一个低通模拟原型,然后得到低通数字滤波器,再经频率变化,转换成高通数字滤波器。

四、试验程序

Fs=5000;%抽样频率

wp=2000*2/Fs;

ws=1500*2/Fs;

Rp=1;%通带波纹

Rs=20;%阻带衰减

Nn=128;%滤波器的序列点数

[N,Wn]=buttord(wp,ws,Rp,Rs);%计算滤波器的阶次和截止频率Wn为滤波器的幅度响应下降至0.707处的频率n为阶次

[b,a]=butter(N,Wn,'high');%设计截止频率为Wn的n阶高通巴特沃斯数字滤波器

b,a为滤波器系统函数表达式中的系数

high表示滤波器为高通滤波器

freqz(b,a,Nn,Fs)%数字滤波器的频率响应

五、实验结果图

 

六、实验心得

通过这次实验,使我更加熟练使用Matlab软件,也让我对巴特沃斯高通数字滤波器有了进一步的了解.它还使我明白了做事要仔细认真,一个不经意间,可能实验结果就出不来。

数字滤波器具有精度高、稳定性好、灵活性强、可预见性好的特点。

 

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

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2