找回密码
 注册
关于网站域名变更的通知
查看: 287|回复: 4
打印 上一主题 下一主题

[仿真讨论] 关于FFT频率确定的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-8-19 11:08 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
求fft高手为我解答!
& [8 T* v9 g. ]8 r我现在遇到的问题是:
1 ~& D% z2 ]; \2 C! n, S+ F在matlab中我的输入信号为:5 ]# T" ~/ _- p8 ^% B- z3 Q
S=Adc+A1*cos(2*pi*50*t+pi*P1/180)+A2*cos(2*pi*75*t+pi*P2/180);
! f: ^: R" d% u  J取256点,通过FFT后,结果如图一所示:通常看图形的左半面,可以容易的看出50赫兹和75赫兹的信号& u  a9 s8 l# Y
而我把输入信号改为:
* Z; l0 g) N- N1 K, ]S=Adc+A1*cos(2*pi*50*t+pi*P1/180)+A2*cos(2*pi*150*t+pi*P2/180);
: i( T: o  O! H8 H此时看图二,还是看左半面,我看到的是50赫兹和130赫兹的信号。。。真正的信号跑到右半面去了。。。。+ B8 e. l) I+ a
如果我们的信号是未知的,那到底如何通过频谱图分析信号呢?4 w0 o( T7 `# a8 ~# A
我就没有多少财富。。。。就50啦。。。希望高手看下。。。6 ^  ^* X. E, N6 c( Z& N' S
我matlab的程序为:  y+ v4 t4 B- j
close all; %先关闭所有图片
9 ~  U8 _. z' ]1 E/ v0 ZAdc=2; %直流分量幅度2 C0 e& e/ E! N; _3 H/ o$ ^
A1=3; %频率F1信号的幅度! w' f; T. p  o
A2=1.5; %频率F2信号的幅度
7 A4 Z' O3 _7 L, y8 hF1=50; %信号1频率(Hz)% j+ N5 ^; ~! M$ ~
F2=75; %信号2频率(Hz)1 C4 C/ w( G  W# u6 G
Fs=256; %采样频率(Hz)5 a  @2 c' k- k
P1=-30; %信号1相位(度)
$ ?, a- m& M1 [) Y$ W0 kP2=90; %信号相位(度)/ E) |# z0 C, l4 t- {6 w( i6 Z
N=256; %采样点数
2 }" p  @8 Q8 b( P7 bt=[0:1/Fs:N/Fs]; %采样时刻
" b0 F! w" O; l5 E4 ?! N( r2 ]/ T%信号
7 G$ F' G9 @3 S. K3 nS=Adc+A1*cos(2*pi*F1*t+pi*P1/180)+A2*cos(2*pi*F2*t+pi*P2/180);
( A* F8 g, W" t# o! N; w, ~$ l%显示原始信号! d9 `# C- y3 d$ n7 q5 }
plot(S);2 x6 H$ R& s- ]2 u* {# \
title('原始信号');6 T( }* z6 Q9 |( ~# j  y  [! N
figure;% J" x) q9 }7 E& {. g  h: Z6 W
Y = fft(S,N); %做FFT变换: p& e( Z; C+ E
Ayy = (abs(Y)); %取模' U8 X; Q5 j7 e. m. p: w3 S- p
plot(Ayy(1:N)); %显示原始的FFT模值结果
8 W8 h3 B+ M. e$ u# G3 {" @title('图1');, x$ _3 W, p5 g4 F
figure;
! y4 ]1 F. z5 h( H9 x' y4 K2 D2 N# l; I; KAyy=Ayy/(N/2); %换算成实际的幅度3 s" w1 Z2 _8 b  B0 k
Ayy(1)=Ayy(1)/2;+ u+ O% N; G$ t) d: w
F=([1:N]-1)*Fs/N; %换算成实际的频率值8 T" ~# f8 @* n
plot(F(1:N/2),Ayy(1:N/2)); %显示换算后的FFT模值结果
0 B6 R9 P2 Z) e3 s; _title('幅度-频率曲线图');) ?& z9 f5 G0 i$ Y0 _" l
figure;
! _7 D2 e2 D3 p6 w# UPyy=[1:N/2];
6 x$ \( u- f/ P, J% Kfor i=1:N/23 [+ [3 ^* Q0 p) u9 [( {  @
Pyy(i)=phase(Y(i)); %计算相位
# u7 W# W) M5 i- a! N9 o) nPyy(i)=Pyy(i)*180/pi; %换算为角度
( ~2 X2 S* Z2 Oend;! m  Y3 c" }' s4 @
plot(F(1:N/2),Pyy(1:N/2)); %显示相位图. M& F: B* a1 E1 W
title('相位-频率曲线图');
! N/ z4 Y) Z: {! i7 z3 f4 V . o; k( S  D: X% {4 M/ C8 V

该用户从未签到

2#
发表于 2022-8-19 13:14 | 只看该作者
首先ADC采样要满足Nyquist采样定义,最简单就是FS>=2F0。你的FS是256Hz,而第二个仿真中出现了一个150Hz的信号分量,也就是不能满足采样定理。在仿真中的表现就是150Hz的信号混叠到采样带宽内了。
& \- A6 ?& s2 v( }

该用户从未签到

3#
发表于 2022-8-19 15:48 | 只看该作者
256Hz的采样频率只能分析小于128Hz的信号,所以在采样以前应该设计一个低通滤波器,避免大于128Hz的信号混叠到带内。  F; h# e: w) m4 h3 p1 `

该用户从未签到

4#
发表于 2022-8-19 16:03 | 只看该作者
采样率不对,会导致混叠* u: N2 |1 ~6 _8 x8 v+ B

该用户从未签到

5#
发表于 2022-8-19 16:08 | 只看该作者
再看看别人是怎么说的7 @! _- C& G! p/ ^2 }
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-2 21:26 , Processed in 0.156250 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表