I can't seem to figure out how to continuiously integrate an accelerometer signal twice to view the displacement. Ive used all of the different integration VI's and i can't seem to get the result i need. i don't want to see a waveform, i just the value of the displacement. Any one help? been at this a long time now.
I can't seem to figure out how to continuiously integrate an accelerometer signal twice to view the displacement. Ive used all of the different integration VI's and i can't seem to get the result i need. i don't want to see a waveform, i just the value of the displacement. Any one help? been at this a long time now.
A true (perfect) integration is probably not what you want because even the slightest dc-offset in your signal will make it drift and most likely corrupt your measurement. Double-integration just makes it even worse.
The best approach really depends on your signal. If it is, for example, a pure (or at least relatively clean) sine tone, you may want to perform your integration in the frequency domain. Otherwise you'll have to choose a "cut-off" frequency under which your integration flattens out or become differentiation (highpass filtering or ac-coupling).
Finally, when you say you just want the "value of the displacement", what is it more precisely? The peak value? The rms value?
Could you post a VI with your signal (for example default values on a graph) to be integrated and some few comments on what you want to measure?
hi there. i guess i wasn't very clear, i apologize about that. i am going to be using a shaker to vibrate a fixture to achieve very small diplacements. the signal out of the accelerometer is going to be a sign wave of some sort, i want to be able to view the displacement after integrating the signal twice. This will allow me to adjust the settings on the shaker to the desired displacement. I want to continuosly see the display on an indicator in labview. I don't have a VI of the signal becasue im not exactly sure what the signal will look like out of the accelerometer. we haven't ran the test yet. I suppose the displacement that i will need is the peak to peak value. hope this helps a bit. thanks.
kungfucrazy wrote: > hi there. i guess i wasn't very clear, i apologize about that. i am > going to be using a shaker to vibrate a fixture to achieve very small > diplacements. the signal out of the accelerometer is going to be a > sign wave of some sort, i want to be able to view the displacement > after integrating the signal twice. This will allow me to adjust the > settings on the shaker to the desired displacement. I want to > continuosly see the display on an indicator in labview. I don't have > a VI of the signal becasue im not exactly sure what the signal will > look like out of the accelerometer. we haven't ran the test yet. I > suppose the displacement that i will need is the peak to peak value. > hope this helps a bit. thanks.
You need
loop: y1=y0 y0 = y1+k*u end
where k is a constant, y0 is the output and u the input to the integrator. Any slight dc offset will send it soaring high into saturation however. Pure integrators are normally only used when there is feedback around say a closed loop system. To implement the above you need a while loop and a register to get y1. Feed the output y0 into the register and get y1 from the past value. u is the current input. If you want this in vector (array) format it is a little more complicated as the register does not do the trick there. For the array case you have to be a little smarter.
kungfucrazy <x...@no.email> wrote in message <news:5065000000080000006FAF0000-1068850981000@exchange.ni.com>... > I can't seem to figure out how to continuiously integrate an > accelerometer signal twice to view the displacement. Ive used all of > the different integration VI's and i can't seem to get the result i > need. i don't want to see a waveform, i just the value of the > displacement. Any one help? been at this a long time now.
I have done something like this, but on chunks of data, and with only one integration. The program acquires 1000 samples from the AD-card in each program iteration and puts these into an array. It then calculates the mean of the array and subtracts the mean from every array location. After this the array is high pass filtered (signal prosessing/butterwort filter)and then integratet (signal prosessing/time domain/integral x(t)).
With this program I measure both a geophone(velocity transducer) and a accelerometer. When I integrate the accelerometer this way, its time series matches the volocity time series very vell.