Hi everyone , here is my issue:
First , I'm reading the variation of voltage trough a potentiometer (an analog voltage that goes from 0 to 5v when rotating the dial) using an arduino , therefore Im reading these values from pin A0. So what I get in a graphic chart is the signal in real time. Ok fine. What I trying to do with the signal is to obtain the FFT. I saw some solutions but they are using the arduino toolkit , but I cannot do that since the real signal wont come from arduino but from a controller (ATmega8).
So the logic Im following is this:
But what Im trying doesnt work , Im knew using labview and I've been overthinking this a lot. Maybe the solution is quite complex or quite easy , dont know really but if you could help me to get this trough at least in something I would be very glad.
Here some screenshots with some commets.
And the front panel view to show what I want to get at the end.
There used to be a link to LabVIEW Tutorials on the initial page of the LabVIEW Forums. Several of us (like Uday) have posted a set as a Reply to new users, such as yourself (Uday -- please post here!).
Learn about Shift Registers, a way of keeping data around between iterations of a loop. What you want to do is start with a blank array and then accumulate new data into the same array (maintained on a Shift Register). Look up Build Array and study how it works. Read the LabVIEW Help on For Loops and While Loops.
My advice is to go through some LabVIEW tutorials. It is really not effective to seek help in this forum before you learn at least the very basic concepts in LabVIEW. One example shift registers, array functions, timing, etc...
I guess you have some kind of licence, like student licence? Either way, you should be able to access the Core 1 online training. Please go through this online course (can be done via a weekend roughly), and post back here in this thread your new VI based on your improved knowledge of LV. You will see, this is a much more efficient way to learn LV.
The array should stay the same size, so you cannot use the "Insert Into Array" block. It is entering new values and making the array bigger in every iteration. You should play with "Replace Array Subset" to implement some kind of a circular buffer. As mentioned above, shift registers are a good solution as long as you don't have too many elements in your array.
You can also use one of the circular buffer implementations available on LTN (example), however I have no experience with them.
Please review the following information, it will help you to improve your skills in LabVIEW and you will be able to create a better solution for you problem:
I hope it helps you!.