FFT of Vibration Data With 1 Sample Per Second
1 次查看(过去 30 天)
显示 更早的评论
Have got data from a MSR data logger which recorded the data from a emergency response helicopter. A sample was taken 1/s. The data which is desirable is the vibration data which may be bedded within the x, y and z accelerometer data. I have tried to convert the time domain signal to frequency using fft.
Fs = 1;
T = 1/Fs;
L = 1605;
t = (0:L-1)*T;
Y = fft(Amp);
P2 = abs(Y/L); P1 = P2(1:L/2+1); P1(2:end-1) = 2*P1(2:end-1);
f = Fs*(0:(L/2))/L;
plot(f,P1)
Using the sampling frequency as 1 the data shows no frequency peaks and generally isn't very useful for understanding the vibration data as for helicopter peaks are expected for the rotor , gearbox etc. Any help on processing the data attached or on analysing vibration from accelerometer would be much appreciated.
Thanks in advance.
1 个评论
John D'Errico
2017-7-30
编辑:John D'Errico
2017-7-30
A simple question to ask is if all the interesting stuff is happening at a far more rapid pace than once per second. If so, then sampling once per second will be no more useful than sampling once per hour.
A quick glance online suggests that the rotors on a normal helicopter spin at hundreds of RPM, generally something like 120-400 RPM. Of course, large copters with long blades will have them spinning more slowly, else the blade tips will be moving at supersonic speeds.
And of course, engine speeds will be more rapid than that. Since the gearbox runs at engine speed to then turn the blades, if you are worried about gearbox vibrations, you need to use a reasonable sampling rate.
回答(1 个)
Star Strider
2017-7-30
I had to plot your data in the time domain to understand that only foiur channels seem to have information, and that in the range of about 10 to 50. After some experimentation, I found that your useful data are in columns 2, 3, 4, and 6.
Insert this line, and you should be able to see your signal:
Amp = Amp(:,[2 3 4 6]);
I first did a time-domain plot of your data, then isolated the columns showing consistent variation with the (rather kudgy) approach here:
[D,S] = xlsread('MSR316339_170505_084223_2.csv');
Amp = D(25:25+1604,1:9);
idx = ((Amp > 10) & (Amp < 50));
figure(4)
spy(idx)
axis square
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Spectral Measurements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!