11-10-2009 11:34 AM - edited 11-10-2009 11:43 AM
Hi I was wondering if labview is equipped to remove noise from a sinusoidal signal. I'll explain my setup.
I have an oscilloscope reading a voltage across, effectively, a resistor. At times I have to use a very small source voltage and the circuit seems to introduce some high frequency noise in the signal I am measuring. I don't have very much experience with labview but I figured out how to do what I've needed to do so far. I was wondering, though, if I can use labview to remove noise from a wave form. I briefly tried playing around with the "filter" VI but it seems to attenuate the signal which is undesirable. What is the best way to clean up a sinusoid with labview? I'll include an example screen capture of what the noisy signal looks like.
Thank you for any help you can provide.
Edited to include attachment!
11-10-2009 11:36 AM
11-10-2009 11:42 AM - edited 11-10-2009 11:43 AM
LabVIEW ships with this example
Its called Express Filter.vi and should be a good place to start for a newcomer to LabVIEW!
Enjoy!
11-10-2009 12:09 PM
Jeff,
That seems to be helpful. I only wonder if I can get rid of this funny effect at the front of the waveform that the filter seems to introduce. I'm worried that it will throw off my RMS measurement...
11-10-2009 12:17 PM
All filters have a transient response when the input signal changes abruptly. Zero to large signal is rather abrupt. About the only thing you can do is to ignore the part of the signal which is within the transient response time of the filter. The duration of the transient is inversely proportional to the bandwidth of the filter. It also depends on the type and order of the filter.
Lynn
11-10-2009 12:33 PM
11-10-2009 12:33 PM
scratch-
That's only meant as an introduction. Lynn brings up some valid points! Using a filter is pretty easy,but if you don't understand how filters work you will draw bad conclusions about the signal. Math is funny that way-
11-10-2009 12:45 PM
The Statistics VI itself probably cannot "ignore" part of the data you feed to it. Just use the array subset to omit the first 0.1 seconds (based on your image) and analyze the rest. You will need to extract the array from the dynamic signal type and perhaps convert it back later. If you do this watch out for any effects from different start times t0. (I avoid the dynamic datatype, so I am not sure without trying, whether t0 will be an issue).
Lynn