I'd be glad to hear if anyone has been successful with any of the included example files when it comes to measuring frequency using any of the supported programming languages in this forum, I'd appreciate some insight into the Functions that were called and how you went about it.
btw I'm calling the ADC1132.dll and looking for clues as to how this works.
The frequency spectrum in PicoScope is not generated in the ADC11 DLL but in PicoScope itself. It uses a fast fourier transform (FFT) to generate the frequency graph. Googling FFT should give you plenty of links to FFT algorithms.
Alternatively, you can take the volts versus time data and count the number of times the signal 'crosses' the mean value in a given time period. This should give a reasonable estimate of frequency.
A hardware solution would be to get a frequency to volts converter and hook the output to the ADC11. The input volts could then be scaled to frequency.
t volts could then be scaled to frequency.
You can easily measure frequency with the ADC-11 with PicoLog. As you go to select your channels simply chose frequency from the drop down list as seen below.
In my 1st post I said I'm calling the adc1132.dll, the big picture is I'm trying to figure out how Freq measurements are done as there is no support for this topic in the LabView examples and help files that I can see nor much in the way of a juicy answer's in my other posts about what functions to call in this dll ...... its all about measuring voltage ! seems like a bit of a handicap if thats all it can do.
Anyway the idea was to see if anyone else has had success and look for the common ground and what Functions to call.
So has anyone here in these forums used any other programming language to successfully achieve freq measurement whether it be VB, C, C++ etc to do this, I'd like to hear some replies.
Mark is it possible to ask the people who wrote the software how I should go about this, I'd appreciate the help.
PicoLog uses the second method that I mention for approximating frequency. It takes volts vs time data and counts the crossing points across the mean value to infer frequency.
The much better solution would be the third method; a hardware converter that outputs a voltage proportional to the input frequency. You can simply scale the output voltage to give you the frequecy.
Mark wrote
"you can take the volts versus time data and count the number of times the signal 'crosses' the mean value in a given time period. This should give a reasonable estimate of frequency"
here your telling me how its done, but not how to do it by calling the appropriate Functions from the ADC1132.dll .... how about some example code ?
as for the third solution, to be honest I'm not looking for any more Hardware when code would do the same job ... I've had some good results with PLW measuring Freq with open collector sensors.
As much as we would like to keep our customers happy, we do not have the resources to tell you how to write your programmes. What we do is give you the tools to achieve this, the programming examples are a stepping stone into writing code and the manual gives a description of the function calls.
Geee... I thought this was where I should come for support and ask my silly questions. oh btw I am a Happy customer with the products and software I have....
I've not asked for anyone to write code for me just a snippit of code showing what Functions have been called from anyone who had any success with this, after all what ever language is used its the same dll being used.
Where in the examples are the tools and stepping stones to measure Frequency you speak of ??? there is no mention of this in detail that I can see if so point me towards it please if its so obvious as to what functions I should be using to count the number of times a voltage is crossing the mean value.
If you have a look at the ADC11CON.C file this will show you what you need to do to collect the data. After that it would be up to you to decide how to measure the frequency, there is no function call that does this.
Thanks
ok I'm no Guru of C, could you tell me what heading of the 5 is the one in question here, obviously not the USB ones
my guess is... * Collect a block of samples when a trigger event occurs ???
but something doesn't seem correct here, I'm thinking this is for the Trigger for when an Event occurs.
* There are five examples:
* Collect a block of samples immediately
* Collect a block of samples when a trigger event occurs
* Use windowing to collect a sequence of overlapped blocks (USB)
* Write a continuous stream of data to a disk file (USB)
* Take individual readings
The example that I believe that you need is the collect a block of samples immediately, this is just a basic collection without triggering. The device will collect the number of samples requested, once this is completed the ready will become true and you can then get the reading with one of the get values function calls.