(高分求助)用Matlab,怎么用FFT变换(傅立叶变换)将一时域数据变换到频域?

初学信号,由于是自学,看了不少资料还是一头雾水,所以在此请教高人!现有一列数据(1000个点,采样频率为10MHz,即时间间隔为10E-7秒),信号的波形如上传图片中的左... 初学信号,由于是自学,看了不少资料还是一头雾水,所以在此请教高人!
现有一列数据(1000个点,采样频率为10M Hz,即时间间隔为10E-7秒),信号的波形如上传图片中的左上图。现在要将此信号通过傅立叶变换(但我不完全确定是通过傅立叶变换,刚接触信号)变换到频域内,以查看其能量分布,变换结果是上传图片中的左下图。
参照某参考书,我编写的Matlab程序如下:
s=importdata('s.txt'); %导入信号数据
y=fft(s,1024); %参数1024是怎么来的?(只有1000个数据点啊)
pyy=y.*conj(y); %或者是这个表达式ppy=abs(y);
f=1000*(0:512)/1024; %1000代表单位量纲变为KHz吗?这个表达式什么意思?
plot(f,pyy(1:513));

通过以上语句作出的图如上传图片中的右图,和想得到的结果完全不一样,不管是最大幅值还是最大幅值对应的频率。
另外有一个问题:采样频率是怎么体现在程序中的?

请高手帮我指出以上程序的错误,并编写一下正确的程序(结果能得到图片的左下图),本人感激不尽,回答正确的定再加分感谢!
如果需要原信号数据,在我的文库里,文件名是“10.7.8信号数据”(注意文件名,我的文库里有几个文件,容易混淆),里面共2列数据,第一列是时间,第二列是信号。
上面有个笔误:正文第二行的“采样频率为10M Hz,即时间间隔为10E-7秒”改为“1E-7秒”。
由于百度要对上传附件转换,“10.7.8信号数据”此文件可能要明天才看到。可用文库里的“10.7.7信号数据”代替,只是该文件的数据采样为100M Hz,即时间间隔为1E-8秒,其他情况两个文件都一样。
展开
 我来答
创旧黄
推荐于2017-11-23 · TA获得超过1269个赞
知道小有建树答主
回答量:213
采纳率:0%
帮助的人:416万
展开全部
s=importdata('s.txt');
y=fft(s,1024); %引入1024,是因为2的整数次幂点的FFT更好做一点,调用这个函数相当于将长度为1000的s补零至1024个点,做1024点FFT,效果等效于频域增加采样点
pyy=y.*conj(y); %不相当于ppy=abs(y),相当于ppy=abs(y).^2
f=10000*(0:512)/1024; %设定横坐标尺度,提醒一下楼主,10E-7对应的1E-6,你的意思应该是1E-7吧.因为横坐标以1kHz为单位,采用频率应该是10000kHz,所以10000代表的是这个意思,FFT最中间的点(以0开头的512点或者以1开头的513点)代表了一半采样频率的频率分量.
plot(f,pyy(1:513),'.-'); %绘制命令,如果要达到左图的频率范围,建议采用plot(f(1:25),pyy(1:25),'.-'),但是可以看到绘制的点数太少.

因此个人建议采用如下的语句
s=importdata('s.txt');
y=fft(s,10000);
pyy=y.*conj(y);
f=10000*(0:250)/10000;
plot(f(1:251),pyy(1:251),'.-');

因为没有s的原始数据,没法给你画图,猜测是加了哈宁窗的正弦信号.
sk_t
2010-07-08 · TA获得超过528个赞
知道答主
回答量:97
采纳率:0%
帮助的人:91.2万
展开全部

我觉得你给的图上的频谱有问题  

因为时域有限对应频率的无限,时域无限对应频率有限

那个频谱图明显是有限,肯定对应一个无限的时域信号

而那个时域图是有限的,肯定对应无限的频域图。 

利用的数据就是你说昨天的那个数据 文库里面下载的

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
unsh
2010-07-08 · TA获得超过2911个赞
知道小有建树答主
回答量:320
采纳率:0%
帮助的人:180万
展开全部
y=fft(s,N); %N应该是采样数据的点数,不能照搬书上的
N1=length(y);
f=n*fs/N1; %n=(0:N1/2-1),fs是采样频率
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式