Acceleration, Velocity & Displacement Spectra – Omega Arithmetic

Accelerometers are robust, simple to use and readily available transducers. Measuring velocity and displacement directly is not simple. In a laboratory test rig we could use one of the modern potentiometer or LVDT transducers to measure absolute displacement directly as static reference points are available. But on a moving vehicle this is not possible.

More here… OmegaArithmetic.pdf

The following two tabs change content below.

Dr Colin Mercer

Chief Signal Processing Analyst (Retired) at Prosig
Dr Colin Mercer was formerly at the Institute of Sound and Vibration Research (ISVR), University of Southampton where he founded the Data Analysis Centre. He then went on to found Prosig in 1977. Colin retired as Chief Signal Processing Analyst at Prosig in December 2016. He is a Chartered Engineer and a Fellow of the British Computer Society.

Latest posts by Dr Colin Mercer (see all)

0 0 vote
Article Rating
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

42 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Linus Lin
Linus Lin
12 years ago

Dear Dr Mercer:
I read your article about Omega Arithmatic and try to apply it on my experiment results, and met some problems really need your help!! I use accelerometer to collect data. Following the article, I do the Fourier transform and divided by -w^2 to get the displacement spectrum. After that when i do the inverse Fourier transform to get displacement time sequence, the result is a “complex vector”. So my question is how can I convert this “complex vector” to a displacement time sequence?? Is it correct to get the magnitude of each complex number, or just keep the real part and leave the imaginary part?? I really appreciate your kindly help!!

Aditya
Aditya
6 years ago
Reply to  Linus Lin

Hi Linus,
Did things work for you ? I tried the same method but data doesnt agree with physical event.

Thanks!

Sun Xioachang
Sun Xioachang
12 years ago

must do the complex calculation, use both parts. u can only use the multiplicaion and addition, basic calculation rules are:

(a+jb)*(c+jd) = a*c-b*d + j(a*d+b*c); (a+jb) + (c+jd) = (a+c) + j(b+d);

if use c, u can use two arrays to hold the real part and imaginary part separately, input spectrum vactors are acc_real[N], acc_imagine[N], N is the number of vectors.

in yr programm what u only need to calculate are: omega_disp_real[N], omega_disp_imagine[N].

Omega_disp_factor_real = -1.0/w^2; Omega_disp_factor_imagine = 0;

for each n

omega_disp_real[n] = acc_real[n]*Omega_disp_factor_real – acc_imagine[n]*Omega_disp_factor_imagine + acc_real[n]*Omega_disp_factor_imagine + acc_imagine[n]*Omega_disp_factor_real ;

omega_disp_imagine[n] = acc_real[n]*Omega_disp_factor_real – acc_imagine[n]*Omega_disp_factor_imagine;

omega_disp_real[n] = acc_real[n]*Omega_disp_factor_imagine + acc_imagine[n]*Omega_disp_factor_real ;

time squence magitude value use: magitude_disp[n] = sqrtf(omega_disp_real[n]^2 + omega_disp_imagine[n]^2); phase[n]=…

if use matlab, the vectors can be directly devided by -w^2, Omega_disp = acc_fft_vector./(-w^2).

matlab takes care of the complex calculation automatically.

time squence magitude value use magitude_disp = |Omega_disp|; phase value: …

Sudhakar
Sudhakar
11 years ago

In case of simple acceleration signal like sin(w*t), the displacement signal is displacement=IFFT(FFT(sin(w*t)/(-w^2))). It works well and good for this.

D.I (sin(w*t)) = -sin(w*t)/w^2 = IFFT(FFT(sin(w*t)/(-w^2)))
D.I. –> double integration

But however in case of composite signals with sinusoids of different frequencies and amplitudes what is the dividing factor.

D.I (sin(w*t)+sin(2*w*t)) = -(sin(w*t)/w^2)-(sin(2*w*t)/(2*w)^2)
is not equal to IFFT(FFT((sin(w*t) )+sin(2*w*t))/(-w^2)))

Nyein Aye
Nyein Aye
6 years ago

Dear Mercer,

I first transform my time series data to f domain using fft matlab command.

fftX = fft(Ax,L); %L=number of samples which is 2048
fftY = fft(Ay,L);
fftZ = fft(Az,L);

And find the displacement matrix for frequency vector ‘f’ of 0 to SamplingRate ‘fs’/2.

df=fs/L; %where df=frequency spacing, fs=sampling rate
for j=2:L/2+1 %Consider half range
omega(j)=2*pi*f(1,j)*df;
velocityX(1,j)=fftX(j,1)./(1i*omega(j));
displacementX(1,j)=fftX(j,1)./(-1*omega(j)^2);
end
omegaVX(1,1)=0;% To avoid division by zero at start – this is the dc component so set it to zero.
omegaDX(1,1)=0;

After getting velocityX and displacementX vectors, I changed velocityX and displacementX vectors to full range by conjugating to perform full range IFFT.

%change to full range by conjucating
for j=1:sizeOmegaX-2
secondVRange(j)=conj(omegaVX(1,sizeOmegaX-j));
secondDRange(j)=conj(omegaDX(1,sizeOmegaX-j));
end
omegaVX(1,1026:2048)=secondVRange;%full range
omegaDX(1,1026:2048)=secondDRange;%full range

And then, ifft them.

velocity=ifft(velocityX);
displacement=ifft(displacementX);

-When I followed all the above procedures, my velocity vector has immiginary part and displacement vector has only real part. I think I have something wrong with concepts. Your kind help is highly appreciated.
Best regards,
Nyein

Colin Mercer
5 years ago
Reply to  Nyein Aye

Hi
I missed this so apologies for very late reply. Yes the velocity should be in the imaginary part with real part as practically zero. This is because velocity is 90 deg phase shifted with regard to accel. Similarly the displacement should be in the real part with effectively zero imag part as it is phase shifted by 180 deg. Basic relationships are [velocity = Accel/(i*omega) = -i*Accel/omega] and [disp = -Accel/(omega^2)] .

Colin

Steve Rogan
Steve Rogan
10 years ago

I’ve seen in training literature the statement about integration from acceleration to velocity ‘ The process involves a phase shift that supresses the higher frequency information and amplifies the lower frequency information.’ Your Omega Arithmatic article does stress the phase shift importance but does not directly confirm the statement. could you please share your comments about the relationship between phase shift and integration and the effects on the frequecy spectrum?

Jozef Steinhubl
Jozef Steinhubl
9 years ago

Dear Dr. Colin Mercer

Your article Omega arithmetic is very interesting for me. I use for statistical analysis my signals (random vibration of trailer wheel from road) software Microsoft Excel (mean, standard deviation, histogram, kurtosis, skewness, FFT, …) . I measured accelerations (time domain) , I do id FFT transform (Excel can make FFT only for maximum 4096 values) and I received real and imaginary parts, then I divided each part with –omega2. I created from first 2048 values the complex values and I do it inverse FFT from 4096 parts but my Displacement has real and imaginary parts and in this point I need your help because my imaginary parts are not effectively zero. I don’t know if you know FFT in Excel.
Thank you very much for your help. I don’t know if Microsoft Excel is good software for omega arithmetic, but I will try to do it with Excel.

Aditya
Aditya
6 years ago

Dr. Mercer can you please email me the spreadsheet so that I will understand better ? I have already sent email to prosig.

Thanks!

Jozef Steinhubl
Jozef Steinhubl
9 years ago

Dear Dr. Colin Mercer

Thank you very much for your answer. I sent today email to prosigusa@prosig.com with request, that my email with short example will be send directly to you.

Mark Nickerson
Mark Nickerson
9 years ago

Hi Colin,

The .pdf was very interesting, thank you for providing this resource. I have a question:

“We are actually dividing by (2 * PI * i * frequency) , the ‘i’ causes the phase change and the (2 * PI * frequency) changes the amplitude.”

Could you explain how to create this “frequency” vector? Normally, after taking a fft in Matlab, if I want to plot Velocity Amplitude vs. freq (Hz), I create a vector from 0 to #datapoints/2, then divide this vector by the length of the sample in seconds. The result is the frequency axis in (HZ).

Is a similar method used to create the frequency vector for use in Omega Arithmetic?

Thus far, my attempts to convert velocity to displacement are not working on my sine wave test signals. The phase change of the result is correct, but when I change the frequency of the velocity, the amplitude of the displacement result remains the same. Therefore I think there must be something wrong wtih my frequency vector.

Thanks for any advice,

Mark

Colin Mercer
9 years ago

Mark
You basically construct the frequency vector as you did for your frequency axis, together of course with the 2*pi. In principle you have to make it complex with a zero real part. Now, there is a twist, which depends on the type of FFT you do. That is, do you have a full range (0 to sample rate) or a half range FFT (0 to sample rate/2). Sample rate/2 is often called the Nyquist frequency. Also of course you want it in Real and Imaginary form.

The way you actually construct the frequency vector is similar to described in the Excel notes above.

Because of the interest l will add a Part 2 article.

Mark Nickerson
Mark Nickerson
9 years ago

Colin,

I look forward to part 2.

Matlab takes a full range FFT, as in you can see the mirror image of the data and only end up using half of it to make a regular FFT plot.

I am not having trouble constructing the positive half of the frequency vector (I don’t think) because my regular FFT plots work fine using the same method.

Per your advice I’ve tried to construct the entire frequency vector, including the negative frequencies, by mirroring my positive frequencies. But, I must have a small problem somewhere. After the omega arithmetic operation where I divide by (2*pi*freqvector*1i), most of the result’s elements are in the form xReal+Yimaginary. But, the first element is -Inf, and the last element is Inf + i*Inf.

I’ll work on it some more tomorrow…

mark nickerson
mark nickerson
9 years ago

It turns out that you can’t do an IFFT of Infinity. Changing all INF’s to 1’s got the process working.

A simple fix but I thought I’d share in case someone runs into this in the future.

Mohammed
Mohammed
9 years ago

Dear Dr. Colin Mercer
Thank you very much for the PDF, it was really helpful

I tried to implement whats in the PDF in Matlab to integrate a sin signal only single integration and it worked perfect match with the theoritcal integration of sin.

But when the input signal was like y = [zeros(1,16) ones(1,16)] the integrated signal wasnt as expected. the shape of the signal looks OK but the integrated values didnt look like 0000..00 12345…16 for delta T of 1 .but it was like
4.3102 4.2200 4.2699 4.2348 4.2626 ……….. 15.7626 16.7348 17.7699 18.7200 19.8102

I wonder where did this ~ 4.3102 came from? the integration should look like
0000..00 12345…16

Below is the implementation code of your idea in Matalb.
Thank you very Much !

n=32 %samples/period

delta_t = 1 %// sampling time

f=1/(delta_t*n)
periodTime = 1/f

t=0:delta_t:periodTime-delta_t; %input one period to the FFT

N=length(t)
df=1/(delta_t*N)

%this signal integration didnt work
y = [zeros(1,16) ones(1,16) ]

% below signal integration works great (commented)
%y = sin(2*pi*f*t);
% insert zero mean signal to the FFT
meanY = mean(y);
y = y – mean(y);

% construct OMEGA
for i=1:1:N/2+1
omega(i+1)=i;
end

omega(N/2+1)= 1;
for i=N/2+2:1:N
omega(i)=-(N-i+1);
end

omega(1)= 1;
omega = 2*pi*df*omega ;

trans = fft(y);

%devide each frequency by jomega
FD = trans./(j*omega);

integrated = ifft(FD) +meanY*(t+delta_t)

%theoryINT = -1*cos(2*pi*f*t)/(2*pi*f);
%plot( t,theoryINT,’-*r’,t,integrated,’-og’)

plot( t,integrated,’-O’)

BENZ Miguel
BENZ Miguel
9 years ago

Dear Dr. Colin Mercer,

Your article is very interesting and I can found some responses for my problem. In fact, I’m civil engineering and I work in a project that the principal goal it’s the road impact measurement So, to describe the impact, i measured the acceleration for each shock to obtain the road displacement. In this moment, the data processing was making in the time domain (double acceleration integration). After a baseline correction, i can obtain the signal almost correct.

I was reading about the acceleration “frequency integration” by the FFT. The problem: i work with excel. So, i need your help, I’m very interesting to obtain a copy of your excel spreadsheet to obtain the displacement by acceleration spectrum integration, because I’ve (Like Mr. Jozef Steinhubl, I get a real part and an imaginary) some problems to obtain the displacement with my spreadsheet in excel.

Thank you very much for your help.

Best regards,

Miguel Angel BENZ NAVARRETE

So, i read about the acceleration “frequency integration” by the FFT. The probleme : i work with excel. So, i nedd your help, ’cause i’m very interesting to obtain a copy of your excel spreadsheet to obtain the displacement by acceleration sprectum integration , because i’ve somes problems to obtain the displacement with my spreadsheet in excel.

Thank you very much for your help.

Steinhubl Jozef
Steinhubl Jozef
9 years ago

Dear Miguel Angel BENZ NAVARRETE

I solved the problem of FFT integration with excel. If you are interesting send me email on steinhubl.jozef@gmail.com, I can send you my excel program.

Best regards
Steinhübl

BENZ Miguel
BENZ Miguel
9 years ago

Dear Mr. Steinhubl Jozef,

I’m interesting and I will sent you an e-amil,

Je vous remercie par votre aide.

Best regards,

Miguel Angel

Luiz Eduardo
Luiz Eduardo
8 years ago

Dear Dr. Colin,
Please, forgive my poor English.
I’m just trying to introduce myself into FFT calculations and I have an elementary question to you.
As an example, suppose I have a time history of velocities signals (after integration of accelerations) and I take a FFT of these signals, say, up to the Nyquist frequency.
The real parts of my imaginary vector will return to me the amplitudes and the imaginary ones will return me the phases. So now, I will have the amplitudes related with the several frequencies. However, I would like to know how to obtain the transformation of these amplitudes in terms of my field (primary) variable, that is, in terms of velocities, so that I can get the spectrum in terms of velocities. In this case It will be possible to perform inverse FFTs for single values, that is for each frequency of the spectrum?
Thanks,
Luiz Eduardo

Kelvin
Kelvin
8 years ago

Hi Dr Colin, i want to ask if my accelerometer receives the data as show below in 3 axis, how to compute them into displacement and velocity?

Accel: 0.260530680418,-0.790787398815,-0.553876399994
Accel: -0.177965387702,-0.922816634178,-0.341669201851
Accel: 0.215337008238,-0.945518255234,-0.244182661176

Thanks,
Kelvin

Prathap
Prathap
7 years ago

Dear Dr.Colin Mercer,
I am trying to make a vibration sensor to measure vibration of washing machine during spin cycle with a MEMS accelerometer and arduino to collect the acceleration data. I will be processing the data using MATLAB.
I went through your comments and I want to know if the FFT method you suggested works at a steady vibrations or even with varing disturbing frequencies.
I ask this because I have to measure the displacement at resonant frequency of washing machine but for safety of the machine this speed is passed very fast. The resonance occurs at about 200rpm while the machine goes from 95 to 400 rpm in 15 s. Will the measurement at this zone and omega arithmatic procedure you explained serve my purpose??

Anna
Anna
7 years ago

close all,clear all,clc
%a=xlsread(‘m1vt.xlsx’,2);%,2,choose 1 after’ is read pg 2
%a=xlsread(‘free-radial direction.xlsx’,3);
%v=a(:,2);
%t=a(:,1);
t = 0:0.01:1;
%v =20*sin(2*3.1415*5*t)
Dear Dr.Colin Mercer:

I try your method to convert velocity to displacement

using a simple signal and compare to those obtained from direct integration methid. It shows difference. The following is my matlab code. Can you help me on this.

t = 0:0.01:1;
v=3*sin(4*2*pi*t) + 5*sin(2*2*pi*t);
plot(t,v);%velocity

dt = t(2)-t(1);
N = length(v)-1;
v_fft = fft(v);

f = (0:N)/(N*dt);
df=1/N/dt;

i=sqrt(-1);
for k=1:N+1;
d_fft(k)=v_fft(k)/(2*pi*k*i*df);
end
cy = real(ifft(d_fft));%displacement

total_t=1/df;
T=total_t*(0:N-1)/N;
figure,plot(T(1:N/2),cy(1:N/2));

%checker :displacement by direct integration
for t=1:1:101;
D(t)=-3*cos(8*pi*t/100)/8/pi-5*cos(4*pi*t/100)/4/pi;
end
figure,plot(T(1:N/2),cy(1:N/2));
hold on
plot(T(1:N/2),D(1:N/2),’r’);

Luiz Eduardo
Luiz Eduardo
7 years ago

Anna, please consider for each value of frequency obtained with your analysis program:

a -For each specific frequency, perform an inverse FFT (IFFT) in order to recover your primary variable, that is, the velocity related with the frequency considered;
b – Now, divide the velocity by Omega=( 2.PI.f) to find d(f), that is: d(f) = v(f) / ( 2. PI. f );
c – If you intend to work with accelerations directly, for each frequency considered perform IFFT to get A(f) and then calculate: d(f)=A(f)/ (2. PI^2 . f)

Dr. Collin explained this in other articles.

Also, take a look at:

http://www.cbmapps.com/docs/28

(Conversion Formulas)

Regards,

Luiz Eduardo

Agustin
Agustin
7 years ago

Dear Dr. Collin,
Thank you for sharing this great tool. I have a question regarding the method, though:

I am able to convert from Acceleration to Displacement following the equations and domain transformations. However I am not able to do the same backwards (convert from Displacement to Acceleration).

I am using Matlab for the FFT and the IFFT; I am sure that the data in frequency domain is correct. I think that my problem is returning from frequency domain to time domain (using the IFFT function). Is there something I should take a look while doing the inverse transformation?

Thank you for the help you can bring. And thanks again for the method; it has been really helpful.

Regards,
Agustin

Thivakar
Thivakar
6 years ago

Dear Dr. Colin,
First of all, Many thanks for your article and the continuous reply it is very useful for the students like me and much appreciated your time and the dedication through out your busy schedule. I have a couple of things to clarify from you about Omega arithmetic method, I would much appreciate if you could help me with this:
I am currently doing some experimental modal analysis using impact hammer test and I do have the impact force and the response acceleration time histories, I need to retrieve the displacement time history from the measured acceleration time histories.
Firstly I have tried with the time domain method using MATLAB but it couldn’t give me promising result since I didn’t have high sampling resolution during my measurements, and currently I have gone through your article about Omega arithmetic method and have implemented in MATLAB, the result was little promising but the DC component of the retrieved displacement was Ofsted from the measured acceleration time histories, and I am suspecting on the following things, could you please kindly help me if possible to tackle the problem:
1. I am doing full scale fft of the measured acceleration in MATLAB, and dividing this fft by -Omega^2, where my Omega is calculated as follows:
outincr = srate / fftlen
where, srate- sampling rate and fftlen- length of fft.
outlen = length of ‘fft’
outlimit = ( outlen – 1 ) * outincr
f = ( 0 : outincr : outlimit )
Omega= 2*pi*f
Could you please kindly guide me whether I am calculation the Omega in right way or not? because I am confusing with the full range fft and the corresponding Nyquist frequency.
2. Since we have zero at the start of the Omega, it is problematic when we divide the fft with -Omega^2. In your previous comment you said we need a special handling, is it OK to add any numerical value at the start of the Omega? for example lets make the starting value of the Omega as 1? if not how we can handle this?
3. And you mentioned that we have to remove or force the DC component of the signal to be zero, do we need to remove the DC component of both the Fourier transformed acceleration signal and the acceleration time history?
I am really sorry for the long message and really sorry to be pain but I really need your help.
Thank You,
Kind Regards,
Thivakar.

Jaroslav Smutny
5 years ago

Dear Dr. Colin Mercer,
Your article is very interesting and I can found some interesting thinking for my problem. In fact, I’m civil engineering and I work in a project that the principal goal it’s the measurement of sleeper displacement under moving trains. But, I still do not believe that application of this method (Omega arithmetic’s) will be successful, so will be possible to calculate shifts sleepers from measured acceleration. Time acceleration record from sleepers is relatively complex. Do you have any experience in this area? What acceleration sensors would be appropriate? There is an opportunity to try this method in same free software? I think the problem is how to select the signal filtering and sampling frequency and so on. Thank you in advance for your advice. Jaroslav Triste, University of Technology.

Colin Mercer
5 years ago

Hi
As you are interested in very low frequencies, down to 0Hz I suspect, then this method would not be good. In simple terms the relationship between acceleration and displacement is (Accel = omega^2 * Displacement) where omega is the frequency in (radians/sec) = 2*PI*f with f in Hz. That means we have in effect
(displacement = accel/(omega^2)) so as the frequency approaches zero then the calculated displacement becomes much too high.

So one heeds to ‘ignore’ the very low frequencies, which the software provides for.
This is OK if you are just interested in the vibration response of the sleeper at higher frequencies for resonances that may cause some long term fatigue problem but I doubt that is your concern.

To get the measurements I believe you are seeking you need either an optical transducer or a strain gauge setup is better. The challenges there are getting a reference point. It depends on whether you want the absolute movement of the sleeper or its motion relative to the ground.

Colin

Paul
Paul
5 years ago
Reply to  Colin Mercer

Dear Dr,

Heaps of thanks for this informative blog. I have a bit of confusion in conversion:

We know that (Accel = omega^2 * Displacement); so if we need to retrieve the displacement from acceleration records we would have (Disp= Accel/ omega^2 ).

However,I cannot figure out why in the article (and throughout comments in here) it is mentioned (Disp = -Accel/omega^2) .What is this negative for?

Thanks for your insights

David Neihguk
David Neihguk
4 years ago

I am unable to download the pdf document. Can anyone share the same?

My email ID is neihguk.david@mahindra.com

Thanks,
David

Prosig
Admin
4 years ago
Reply to  David Neihguk

Hi David. Thanks for spotting the broken link. It should work now. We have also emailed you the PDF.

Daniel Correa
Daniel Correa
3 years ago

Hello all,

Can anyone suggest how to perform an FFT/Omega transformation on realtime data to output realtime displacement? Would this be the correct way to do this? How is it done with the realtime vibration software offered by prosig?

Daniel Correa
Daniel Correa
3 years ago

Hello all,

I have a question regarding the example of Omega Arithmetic described in the pdf. After trying to recreate the results in the article the only way I was able to get the correct scaling of the inverse FFT result was to scale the original FFT estimate in the following manner:

FFT(X) * ( 3/ length(X) ); where 3/ length(X) = 1.5e -5.

I do not know why this works. All the material I have read about proper scaling of FFT do not mention this kind of scaling. It seems like a very arbitrary value to scale by which tells me I may have made a different mistake elsewhere. Perhaps I miscalculated omega or the frequency spacing. Can anyone offer any suggestion? My calculations done in R language are the following:

total sampling time= 0.2 s

sampling rate= 100,005 htz

total samples= 20,000

time<-seq(1,1.2,0.00001)

acc<-NULL

for(i in 1:length(time)){

acc[i]<- 10*sqrt(2)*sin(2*pi*50*time[i])+5*sqrt(2)*sin(2*pi*120*time[i])
+8*sqrt(2)*sin(2*pi*315*time[i])+2*sqrt(2)*sin(2*pi*500*time[i])
}

df=( length(acc)/ ( max(time)- min(time) ) )

freq<-seq( 0, df, df/ length(acc) )
freq<-freq[ -length(freq) ]

accfft<-fft(acc)*(3/length(acc))

plot(freq[1:length(freq)/100],abs(accfft[1:length(accfft)/100]), type = "l")

abline(v=c(50,120,315,500), col="red")

w3<-2*pi*( df/length(acc) )

accOYfft<-NULL

for( i in 1:length(accfft) ){

accOYfft[i]<-(accfft[i])/-(w3*i)^2

}

disp<-fft( accOYfft, inverse = T )

disp<-Re(disp)

plot(time, disp, type = "l", col="blue")

James Wren
3 years ago
Reply to  Daniel Correa

Hello Daniel,

Thank you posting on our blog.

It is very interesting to see you R language code, thank you for sharing.

I am afraid I cannot say I have ever used a statistical analysis language like R before and therefore I could not comment.
Perhaps some of our other readers will have experience using R and may be able to comment in time.

To move forward I could only suggest you consider one of two options, either option A, use a signal processing package like Prosig DATS that provides complete and ready to use tools, rather than having to create your own algorithms or option B use a more common language like C where support from an open source community might be more available.

Thanks again for sharing!

Daniel Correa
Daniel Correa
2 years ago
Reply to  James Wren

Hello,

Thanks for your advices. I tried these calculations in R because at the time that was the only programing language i knew. I am now using a similar algorithm in python to estimate displacment of an accelerometer in realtime. I got positive results when testing the system, however i find again that I must multiply my final values by a scaling factor for the magnitude or “amplitude” of displacment to be accurate. If my acceleration is input as m/s^2 shouldnt my displacment be output as m? I just want to ask is it normally neccesary to have to scale the final result? Under what circumstances would this be necassary? Is there a good method for estimating the scaling factor?

James Wren
2 years ago
Reply to  Daniel Correa

Hello Daniel,

Thank you for posting back on our blog.

I understand your issue. You are quite correct, if your input acceleration is in m/s/s then the velocity will be in m/s and the displacement will be in m.

There is no scaling factor however, only that you should be aware of the change in units.

There are conversion charts, they are (Y Axis) log of Amplitude and (X Axis) Frequency, these should help you understand if your conversion is taking places correctly.

Good luck.

Soman sundar s
2 years ago

Hi,
I have the experiment results from PCB instrument acceleration Vs time. I need to find the acceleration to velocity and displacement. kindly help me out this what methods going to be use and analysis. please if you have a code please send to me somudce@gmail.com

Chris Mason
Editor
2 years ago
Reply to  Soman sundar s

Dear Soman

If you download the PDF in the link in the article it explains the technique that you should use. There are also other posts on the subject here… https://blog.prosig.com/2013/07/25/how-do-i-convert-between-acceleration-velocity-displacement/

If you read the comments above there is lots of help.

I am sorry but we don’t have any code that we can share.

CLOSE
CLOSE
42
0
Would love your thoughts, please comment.x
()
x