通过八度快速傅立叶变换评估的汽车振动

问题描述 投票:0回答:1

亲爱的,我想寻求帮助。我必须评估汽车的振动。在本次试验中,我使用了加速度计。收集的数据取决于时间。我需要通过FFT将数据从时域转换到频域。不幸的是,我对编码和FTT不太熟悉,但是我发现并使用了以下代码。

对我来说奇怪的是,最大高点为0Hz。请参阅附件图片。无论如何,有没有一种方法可以使图形更明显?例如,在x轴上切割一个序列,仅显示200Hz以下的数据。enter image description here

clc
A=xlsread('50_dirt_road.xlsx');
t=A(:,9);
s=A(:,8);
Ts = mean(diff(t));                                     % Sampling Interval
Fs = 1/Ts;                                              % Sampling Frequency
Fn = Fs/2;                                              % Nyquist Frequency
L = numel(t);                                           % Signal Length
sm = s - mean(s);                                       % Mean-Corrected Signal (Eliminates 0 Hz Offset)
FTs = fft(sm)/L;                                        % Fourier Transform
Fv = linspace(0, 1, fix(L/2)+1)*Fn;                     % Frequency Vector
Iv = 1:numel(Fv);                                       % Index Vector
[MaxV,idx] = max(abs(FTs(Iv))*2);                       % Maximum V & Index
Freq = Fv(idx);                                         % Frequency Of Maximum V
figure
plot(Fv, abs(FTs(Iv))*2)
grid
text(Freq, MaxV, sprintf('\\leftarrow %.4f G, %.0f Hz', MaxV, Freq), 'HorizontalAlignment','left')
xlabel('Frequency (Hz)')
ylabel('Amplitude')

请您仔细检查一下吗?要了解我的变量,请参见下面的评论:[s =测得的“ G”值->总共3395个测得值t = time-> 0.001s后记录每个单个值->总计3.395s预先谢谢你。

fft octave vibration
1个回答
0
投票

您指的最大高点是正常的。在没有频率截止的情况下,傅立叶变换的开始(最接近零)将始终具有最大的频谱能量,因为它可以解决趋向于零的采样率,正如您可以想象的那样,该采样率在时间序列中具有大量代表。显然,0 Hz是不可能的,并且它低于由频谱解析的奈奎斯特频率,因此也应对其进行滤波。因此,我建议使用带通滤波器,该滤波器进行前向和后向滤波(过滤滤波)以保留原始时间序列,然后通过此分析运行结果。我会从巴特沃斯过滤器开始,并根据需要尝试其他方法:

https://octave.sourceforge.io/signal/function/butter.html

 %4th order butterworth filter with a band pass of nyquist to 200hz in radians
 %forward and reverse filtered
 [b,a] = butter( 4, [fn*2*pi), 200*2*pi]);
 filtered = filtfilt(b,a,t);

让我知道是否有任何疑问。

© www.soinside.com 2019 - 2024. All rights reserved.