24小时热门版块排行榜    

查看: 438  |  回复: 0

hailiang

金虫 (正式写手)

[求助] 请教,对信号做傅里叶分析,当原始信号不是整数或加0.5时结果不对

请教,对信号做傅里叶分析,当原始信号不是整数或加0.5时结果不对

我用下面的程序对余弦信号做频谱分析,当信号频率是整数或者是正负0.5的时候都正确,就是求出的振幅和频率刚好是原始信号一样,但是如果原始信号频率不是整数或正负0.5时就不正确,请问是精度设置的不够高,还是采样频率和采样点数不对!
下面的程序是Mathematica程序,Matlab程序试了也一样
A1 = 3;   (*% 频率F1信号的幅度*)
(*F1=1/(2 Pi);   (*% 信号1频率 (Hz)*)*)
F1 = 0.11;
Fs = 256;   (*% 采样频率 (Hz),要大于信号频率的两倍*)
P1 = 100;   (*% 信号1相位 (度)*)
NN = 2048;    (*% 采样点数,通常取2的整数次方*)
S = A1*Cos[2*Pi*F1*t + Pi*P1/180];  (*输入原始信号*)
Plot[S, {t, 0, 10}, PlotPoints -> 200, PlotLabel -> "原始信号"]
Plot[S, {t, 0, NN/Fs}, PlotPoints -> 200, PlotLabel -> "原始信号"]

b = Range[0, NN/Fs, 1/Fs];
g = S /. t -> b;
S1 = Take[g, Length[g] - 1];
Y = Fourier[S1, FourierParameters -> {1, -1}];
Ayy = Abs[Y];
ListLinePlot[Ayy, PlotRange -> All]

(*以下显示换算后的FFT模值结果*)
Ayy = Ayy/(NN/2);
Ayy[[1]] = Ayy[[1]]/2;
(*Ayy[[1]]=0;*)
F = Range[1, NN];
F = (F - 1)*Fs/NN;
FF = Array[h3, {NN/2, 2}];
Do[h3[i, 1] = F[]; h3[i, 2] = Ayy[], {i, 1, NN/2}];
ListLinePlot[FF, PlotRange -> All, Frame -> True,
FrameLabel -> {"频率/Hz", "振幅"}]



下面是matlab程序

close all; %先关闭所有图片
Adc=2;  %直流分量幅度
A1=3;   %频率F1信号的幅度

F1=0.1;  %信号1频率(Hz)

Fs=256; %采样频率(Hz)
P1=-30; %信号1相位(度)

N=1024;  %采样点数
t=[0:1/Fs:N/Fs]; %采样时刻
%信号
S=A1*cos(2*pi*F1*t+pi*P1/180);
%显示原始信号
plot(S);
title('原始信号');

figure;
Y = fft(S,N); %做FFT变换
Ayy = (abs(Y)); %取模
plot(Ayy(1:N)); %显示原始的FFT模值结果
title('FFT 模值');

figure;
Ayy=Ayy/(N/2);   %换算成实际的幅度
Ayy(1)=Ayy(1)/2;
F=([1:N]-1)*Fs/N; %换算成实际的频率值
plot(F(1:N/2),Ayy(1:N/2));   %显示换算后的FFT模值结果
title('幅度-频率曲线图');

Y1=Ayy(1:N/2);
[da1,dda1]=max(Y1);
Y1(dda1)=0;
[da2,dda2]=max(Y1);
Y1(dda2)=0;
[da3,dda3]=max(Y1);
da1
da2
da3

figure;
Pyy=[1:N/2];
for i=1:N/2
Pyy(i)=phase(Y(i)); %计算相位
Pyy(i)=Pyy(i)*180/pi; %换算为角度
end;
plot(F(1:N/2),Pyy(1:N/2));   %显示相位图
title('相位-频率曲线图');
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

相关版块跳转 我要订阅楼主 hailiang 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +33 医学老男孩 2026-08-13 79/3950 2026-08-17 14:00 by GZUZM
[博后之家] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 6GojgJvkDudM 2026-08-16 6/300 2026-08-17 13:58 by EYK67XJMj64E
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 6GojgJvkDudM 2026-08-16 4/200 2026-08-17 13:49 by EYK67XJMj64E
[基金申请] filecode=后面第一个是大写字母 +7 wangze12014 2026-08-14 8/400 2026-08-17 12:45 by a441914426
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +12 Ldrop2023 2026-08-13 13/650 2026-08-17 12:33 by gltch
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 i7NFEVbjQMM5 2026-08-16 4/200 2026-08-17 12:10 by 4GBAYCdVQoK3
[考研] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 6GojgJvkDudM 2026-08-16 4/200 2026-08-17 11:46 by 4GBAYCdVQoK3
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 6GojgJvkDudM 2026-08-16 3/150 2026-08-17 09:49 by xLVPIRuSvCUe
[论文投稿] 岩土工程学报什么时候才能终审完呐 25+3 yeager111 2026-08-10 4/200 2026-08-16 20:42 by tfang
[基金申请] 时间戳又变了8-15 +13 archvillain 2026-08-15 25/1250 2026-08-16 20:13 by zhaosm1982
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +3 Tide man 2026-08-14 3/150 2026-08-16 17:47 by jurkat.1640
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +10 majunge000 2026-08-11 12/600 2026-08-16 08:18 by xli1984
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
信息提示
请填处理意见