FFT Based Order Tracking

조회 수: 33 (최근 30일)
Adeel Ashraf
Adeel Ashraf 2021년 2월 3일
댓글: Mathieu NOE 2021년 2월 4일
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