Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

Can synchronous Sampling be done by Matlab

Asked by Ijeoma Madu

Ijeoma Madu (view profile)

on 11 Dec 2012

Hi:) I have a tacho signal and a vibration signal and i would like to synchronize both using Matlab´. Any Ideas?

3 Comments

Walter Roberson

Walter Roberson (view profile)

on 12 Dec 2012

What do you mean by "synchronize" in this situation?

I'm not sure why you have tagged this question with "order tracking" ??

Jan Simon

Jan Simon (view profile)

on 12 Dec 2012

"I have a signal" is not clear also: Do you have feel the signal, while you sit in the car, or do you have two sensors measring this in real-time, or two file with recorded data and the corresponding times, or one file with two columns?

Ijeoma Madu

Ijeoma Madu (view profile)

on 12 Dec 2012

Thanks. @Jan they are two files with recorded data from a transmission Test rig.

@Walter I tagged it order tracking because the idea is to obtain the orders instead of frequencies after fft. And this could be achieved directly if the measured signal was sampled at the rate of the rotating shaft. But unfortunatly the measured signal was not sampled synchronously with the tacho so i would like to get both signals synchronized before performing fft. please see link for what i am trying to achieve. your ideas will greatly be appreciated. Thanks

http://www.wavelet.org/tutorial/synch.htm

http://blog.prosig.com/2011/11/09/what-is-synchronous-angular-sampling/

Ijeoma Madu

Ijeoma Madu (view profile)

Products

No products are associated with this question.

1 Answer

Answer by Ryan G

Ryan G (view profile)

on 12 Dec 2012
Accepted answer

Assuming you have an accurate time related to each signal, you could use the synchronize function with a time series class.

Essentiall you define the data using timeseries:

   ts1 = timeseries(data1);
   ts2 = timeseries(data2);

And then synchronize:

 [ts1 ts2] = synchronize(ts1,ts2,'union');

This may be overly simplistic for what you are trying to do, but you can try it and comment back with what is and is not working more specifically.

1 Comment

Ijeoma Madu

Ijeoma Madu (view profile)

on 17 Dec 2012

Thanks.

Ryan G

Ryan G (view profile)

Contact us