应用MATLAB对信号进行频谱分析及滤波 .pdfVIP

应用MATLAB对信号进行频谱分析及滤波 .pdf

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

数字信号处理课程设计报告书

应用MATLAB对信号

课题名称

进行频谱分析及滤波

姓名李光明

学号

院、系、部电气系

专业电子信息工程

指导教师刘鑫淼

2013年6月28日

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

李光明

一、设计目的

用MATLAB语言进行编程,绘出所求波形,并且运用FFT求对连续信号进行分

析。

二、设计要求

1、用MATLAB产生正弦波,矩形波,并显示各自的时域波形图;

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

求注明;

3、绘制三种信号的均方根图谱;

4、用IFFT恢复信号,并显示恢复的正弦信号时域波形图。

三、系统原理

用FFT对信号作频谱分析是学习数字信号处理的重要内容。经常需要进行频

谱分析的信号是模拟信号和时域离散信号。频谱分辨率直接和FFT的变换区间N有

关,因为FFT能够实现频率分辨率是2π/N。

x(n)是一个长度为M的有限长序列,则x(n)的N点离散傅立叶变换为:

(3.1)

其中

(3.2)

逆变换为:

(3.3)

但FFT是一种比DFT更加快速的一种算法,提高了DFT的运算速率,为数字信

号处理技术应用于各种信号处理创造了条件,大大提高了数字信号处理技术的发

展。本实验就是采用FFT,IFFT对信号进行谱分析。

四、程序设计

1、产生正弦波及方波

2、对正弦波及方波进行FFT变换并作频谱图(采样频率为1000Hz,数据长度

为1024)

3、求正弦波及方波FFT变换后的功率谱(数据长度为1024)

4、用IFFT恢复原始信号(采样频率为1000Hz)

程序如下:

fs=input(请设定采样频率:);%设定采样频率

N=input(请设定数据长度:);%设定数据长度

t=0:0.001:1;

f=100;%设定正弦信号频率

%生成正弦信号

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

figure(1);

subplot(211);

plot(t,x);%作正弦信号的时域波形

axis([0,0.1,-1,1]);

title(正弦信号时域波形);

z=square(60*t);

subplot(212)

plot(t,z)

axis([0,1,-2,2]);

title(方波信号时域波形);grid;

%进行FFT变换并做频谱图

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

mag=abs(y);%求幅值

f=(0:N-1)*fs/N;%横坐标频率的表达式为f=(0:M-1)*Fs/M;

figure(2);

subplot(211);

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

axis([0,1000,0,200]);

title(正弦信号幅频谱图);

y1=fft(z,N);%进行fft变换

mag=abs(y1);%求幅值

f=(0:N-1)*fs/N;%横坐标频率的表达式为f=(0:M-1)*Fs/M;

subplot(212);

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

axis([0,1000,0,200]);

title(方波信号幅频谱图);grid;

%求功率谱

sq=abs(y);

power=sq.^2;

figure(3)

subplot(211);

plot(f,power);

title(正弦信号功率谱);grid;

sq1=abs(y1);

power1=sq1.^2;

subplot(212

文档评论(0)

175****1598 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档