FFT Based Order Tracking

12 次查看(过去 30 天)
Adeel Ashraf
Adeel Ashraf 2021-2-3
I'm doing order analyis but unable to adjust the x-axis to find out the RPM orders. Also my tacho signal sampled synchronously in time, .mat timeseries result attached with this post.
Please guide me
In this link you will find out what I'm actually trying to do.
https://community.sw.siemens.com/s/article/what-s-an-order
Time= tsout.time;
Enc= tsout.Data(:,1);
k=1;
Time_old=0;
for i =1:(length(Enc)-1)
if Enc(i+1) ~= Enc(i)
Delta_T(k)=Time(i+1)-Time_old;
Time_old=Time(i+1);
k=k+1;
end
end
B = Delta_T(2:801); % delta T time for 8 cycles
Z = detrend (B);
z = Z;
R = 100; % event per revolution
L = length(z);
xf = fftshift(fft(z));
tc = (0:(1/R):((length(z)-1)/R));
plot (tc,abs(xf));

回答(1 个)

Mathieu NOE
Mathieu NOE 2021-2-4
hello
I was not able to understand the second part of your code
If the target was to compute the RPM value vs time , look here after
see the attached function used here
FYI, I had to "regenerate" the time values (assuming this is sampled at fixed sampling frequency) , because du to rounding (short format) the time precision was insufficient to compute the RPM with good accuracy
Time= tsout.time;
Enc= tsout.Data(:,1);
samples = length(Time);
dt = (Time(samples) - Time(1))/ (samples-1);
Fs = 1/dt;
Time2 = (0:samples-1)*dt;
n = 1500;
% find crossing points / positive slope / threshold = 2.5 V)
threshold = 2.5 ;
[~,t0_pos,s0_pos,~,~,~] = crossing_V7(Enc(1:n),Time2(1:n),threshold,'linear');
figure(1),
plot (Time2(1:n),Enc(1:n),'b',t0_pos,s0_pos,'r+');
delta_time = diff(t0_pos);
rotation_freq = 1./delta_time;
RPM = 60*rotation_freq;
figure(2),
plot (t0_pos(2:end),RPM,'b');
xlabel('time (s)');
ylabel('RPM');
  8 个评论
Adeel Ashraf
Adeel Ashraf 2021-2-4
Sorry, I want to rephrase my question do we need vibration data seprately to do the order analysis. Actually I'm quite new to this topic also if it"s possible can you provide me some refrences on this topic where it done like that.
Mathieu NOE
Mathieu NOE 2021-2-4
You have to acquire the data simulteanously (synchro) with the tacho signal
there are basically two methods :
  • acquire both channels at a fixed sampling rate and do the resampling for order analysis afterwards
  • acquire at trigger events (rising slope of your tacho signal); in this case you have fixed number samples per shaft revolution and you can easily and directly (real time) do order analysis; it's also possible afterwards - no limitations, except that this method will not allow you to see other vibrations that the synchronous orders; that's why the method depends if you want to have a complete map with orders and non synchronous vibrations plotted in 3D map, or if you are only interested in orders analysis
there is quite a lot of information available on the internet :
...

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Vibration Analysis 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by