FFT Based Order Tracking

12 visualizzazioni (ultimi 30 giorni)
Adeel Ashraf
Adeel Ashraf il 3 Feb 2021
Commentato: Mathieu NOE il 4 Feb 2021
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));

Risposte (1)

Mathieu NOE
Mathieu NOE il 4 Feb 2021
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 Commenti
Adeel Ashraf
Adeel Ashraf il 4 Feb 2021
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 il 4 Feb 2021
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 :
...

Accedi per commentare.

Categorie

Scopri di più su Analog Input and Output in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by