05-21-2024 03:05 PM
What are the time unit on the x-axis? What time resolution do you really require? Maybe an analog lowpass filter and a slower data rate is all you need.
05-21-2024 03:26 PM - edited 05-21-2024 03:26 PM
@altenbach wrote:
FFT is not a tool to eliminate noise. If you have noisy data...
Hmm... It depends, of course, but why not?
05-21-2024 03:34 PM
That makes sense, yes that is what I was trying to express and attempt to do.
Would it work with a continuous input and taking information from a DAQ?
Sorry if that seems simple I am new to this. Is there a resource you would recommend looking at I don't want to take your time up?
05-21-2024 04:20 PM
@emberd wrote:
That makes sense, yes that is what I was trying to express and attempt to do.
Would it work with a continuous input and taking information from a DAQ?
Sorry if that seems simple I am new to this. Is there a resource you would recommend looking at I don't want to take your time up?
Yes, this will work for continuos signal, just collect enough data points and then filter "running" buffer where newest data added and oldest removed, like running window.
LabVIEW shipped with tons of examples, to understand block diagram above (which is documented quite good) you have to learn basic for- and while- loops, case structure, event structure, then queued message handler fundamentals as well as state machine fundamentals and also notifications.
If its only about displayed data, then you can add filrtering somewhere here:
From screenshot of your signal above may be FFT will be not the best approach, if your noise is gaussian then consider to think about Kalman Filter instead, may be.
05-21-2024 05:05 PM
@emberd wrote:
This is the data I'm collecting. That spike that goes down the farthest is my point of interest. I have made a model to fit my data by using heavier object to create a bigger change in voltage. I don't know what the stray frequencies are and I was hoping to use the fourier transform to figure that out.
The sample rate is 1000
What is a rate of 1000? You need to give units! (Hz, MHz, mHz?) What is the shortest such transient that you need to be able to detect?
That tiny dip signal requires frequencies that are very similar to your noise and I doubt FFT based (or any kind of filtering) can reliably separate it from the desired signal.
05-21-2024 05:32 PM
@emberd wrote:
This is a file of me just letting the sensor sit there with a poke at around 20.5 or data point 8588.
This signal is so low that it is limited by the digitizer resolution and all you get are 8 possible values and the distribution looks pretty Gaussian. Are you sure you attached the correct file?
05-22-2024 09:27 AM
Sorry, the data is being taken at 1000 samples a second in hertz.
I am not sure what transient I need to detect as the sensor did not come with any description of its output frequency.
Thats what I thought, not sure how to filter, probably a lot of trials.
05-22-2024 09:38 AM - edited 05-22-2024 09:39 AM
Thats interesting. That was the correct file. These are two other trials where I used a bigger force to make the distinction clearer. Would it be easier to figure out the noise then and then apply it to the much smaller forces? Thank you for helping
I am using a 16 bit digitizer
05-22-2024 09:49 AM
I think I know why I was not realizing that. When I looked at the data I would look at it smoothed over the mean to get a better sense which made me neglect the fact that the same volts were popping up. If I know what volts are there when nothing is happening, could I not eliminate those?