LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Help me apply labview filter

Hello, I don't speak English, so I used Google Translate. please understand.

 

Data_1 has the original signal.

 

I tried various filters to see only a specific section.

 

But I don't know how to specify the data I want.

 

The purpose is to find internal defects by applying vibration to the product.

 

So I don't know the exact frequency, so I want to find the product resonance by changing the filter little by little.

 

If there is a good way, please teach me.

 

p.s - I am using an M2p.5962-x4 digitizer from Spectrum Instrumentation company to receive data.

0 Kudos
Message 1 of 27
(2,540 Views)

That's a very limited description of the problem in any language.

 

The resonance frequency is probably the highest frequency in the FFT?

 

So, get the max from the FFT, and use that frequency as an input to the filter?

 

If you want to detect a frequency, you might not need a filter...

0 Kudos
Message 2 of 27
(2,491 Views)

hello

 

We are shooting the frequency with 27.5Khz now.

 

I want to check the rest of the values ​​except 27.5Khz with FFT.

 

Which filter should I use and how?

0 Kudos
Message 3 of 27
(2,455 Views)

@ndtsystem wrote:

We are shooting the frequency with 27.5Khz now.

 

I want to check the rest of the values ​​except 27.5Khz with FFT.

 

Which filter should I use and how?


You could filter the signal before doing the FFT, a bandstop filter (Equi-Ripple BandStop.vi, or Equi-Ripple BandStop PtByPT.vi maybe). Then get the maximum from the FFT, which should be the single highest frequency.

 

Or you can simply remove the 27.5 kHz peak (+/- a few kHz) from the FFT by making those samples the minimum value, and then get the maximum to get the single highest peak.

 

You can also try Peak Detector.vi or Peak Detector PtByPt.vi on the FFT data, to get all frequency peaks, and then analyze the results.

 

If you want example code, we need real life data...

0 Kudos
Message 4 of 27
(2,427 Views)

I'm sorry I didn't organize the question properly.

 

Raw data is coming in in real time, but we are trying to process it by temporarily storing the data of a moment.

 

The units of the FFT did not match, so it became more complicated. 😞

 

It shoots a 27.5Khz vibrator at the product, and the value is prepared to enter the PC through the sensor connected to the product.

 

I think what I want is a bandstop.

 

Is it possible to check if the bandstop value and FFT are properly created?

 

There are many difficulties in learning through the translator, so I am not even sure if I have configured it properly.

0 Kudos
Message 5 of 27
(2,392 Views)

sub vi is missing.

0 Kudos
Message 6 of 27
(2,388 Views)

I'd use the waveforms like this (no need to set dT, T0 and attributes are copied):

wiebeCARYA_0-1664525949534.png

 

Note that your frequency (x?) is 10000, but your dT is 1e-8. f= 1/ dT, so I'd expect f to be 1E8, or 100000000, or 100MHz.

 

If f is wrong, the filters will be wrong.

 

I'd simply calculate f from dT:

wiebeCARYA_1-1664526281346.png

 

Where does "131072" come from?

 

wiebeCARYA_2-1664526560498.png

 

 

0 Kudos
Message 7 of 27
(2,362 Views)

If you say you 'shoot' to a Frequency of xx.x kHz , you specified a resolution for your Resonance of 100 Hz ?

If you use FFT (bins) to measure that frequency you need at least 1/ 100 Hz = 10ms of data. your first posted pic show 10µs of data , how long do you measure?

 

 

Have a look at the order-anlyses vis in the sound and vibration addon?

 

 

Take a look at the tone detection vi.  (read the help)  It measures the frequency of highes amplitude and can output the residue (mean the waveform without that frequency.

If you put that in a loop you get a list of n major frequencies.  did that a loong time ago ... posted that vi in the forum . just search

 

Greetings from Germany
Henrik

LV since v3.1

“ground” is a convenient fantasy

'˙˙˙˙uıɐƃɐ lɐıp puɐ °06 ǝuoɥd ɹnoʎ uɹnʇ ǝsɐǝld 'ʎɹɐuıƃɐɯı sı pǝlɐıp ǝʌɐɥ noʎ ɹǝqɯnu ǝɥʇ'


0 Kudos
Message 8 of 27
(2,346 Views)

I will throw in my two cents, as I've been watching this thread grow.

 

You have a black box that you're vibrating, and you have a vibration sensor that passes back raw samples, somehow.  These samples are then captured at various times, over various time spans (domains t0 to tn), and you're wanting to detect if there are unintended resonances due to the manufacture of the black box.  Correct?

 

Well, sample at better than twice the rate of your highest expected frequency.  Lowpass filter your raw input from your sensor to limit the maximum frequency to be less than your sample rate.

 

What you're getting back is a discrete time sampled representation.  Lowpass filter it to remove your step function, with the intent to smooth it, make it look like a continuous function of time (f(t)), even through it's still quite discrete, not continuous.  (Sample at a very high rate and you'll have more of a "real-looking" signal, later.)

 

Take the Fourier Transform: x(t) --> X(f).  This will produce a function of frequency (X(f)) from your time domain signal x(t).  Once again, assume it to be continuous.  Then differentiate your newly had X(f), making dX(f)/df.

 

Sweep the result in a loop and find your zeroes.  (A zero is just a point between negative (-) and positive (+) derivatives.  You'll be looking for - becomes +.  In between those is zero slope, a peak.)  Mark them in some way, like using/producing an array of times (ta, tb, tc...tn.)

 

Now use those times to check the magnitudes of your X(f) function.  Any place where, outside of your 27.5KHz, you get a magnitude is, frankly, an unwanted resonance.  What should your threshold magnitude be?  I don't know.  Play with it and determine it empirically.

 

Always check LabVIEW's results; make sure they make sense.  Also, make some fake test functions to test that your code is sound prior to going for the real thing.

 

And that's my two cents.

 

0 Kudos
Message 9 of 27
(2,333 Views)

oops! make that positive (+) derivative becomes negative (-).  You want a mountain, not a bowl.

0 Kudos
Message 10 of 27
(2,329 Views)