LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

can pulse measurement.vi measures 2M points with 10ns time interval?

I know this is a stupid question but I really couldn't  figure out the component that you used to import the waveform data (ch 2).

I think I have problems in understanding the reference level setting. If say I have a waveform that have a maximum value of 10 and a minimum value of -2. What reference level input should I use if I want the vi to calculate the pulse widths of the waveforms that are larger than zero (in other words, I only want the positive pulse width)? And what reference level should I use if I want the vi to calculate the pulse widths of the waveform that are larger than 3. 

Thank you.

0 Kudos
Message 11 of 16
(895 Views)
The waveform data is a constant I got from using the Read From Spreadsheet Fiel on the data you posted. I just didn't feel like reading the file each time so after I did it once, I made it a constant and stuck it into the example I posted.
 
I think you misunderstand the way the function works. You specify a reference level as absolute (i.e. voltage levels) or percent (i.e. at the 10% or 90% points of the amplitude). Using these thresholds, the function returns the pulse width of the first pulse that meets the threshold requirements. I'm don't think you can specify that it only return a pulse of a certain width. What I have done in the past when there have been multiple pulses, is to run the function in a loop and each time increment the pulse number. I terminated the loop when it returned an error - meaning that all pulses had been found. I would auto-index the pulse duration and pulse center data out of the loop to create arrays of each and then look through the array to find a pulse of the correct width.
0 Kudos
Message 12 of 16
(891 Views)
I thought Pulse measurement will give me an array of pulse width since there are a few pulses that pass the threshold level. I don't understant how it only give me a constant number. Does it assume that all the pulse widths are the same and give me just a constant? If this is the case, it is possible for me to get the total number of pulse that exceeds the threshold level? Because I need to sum all the pulse widths that exceed the threshold level. And the pulse widths might be different at different time frame (such as noise amplitude).
 
Thanks for any explanation.
0 Kudos
Message 13 of 16
(872 Views)
Unless you've got a different  version of Pulse Measurement with your version of LabVIEW, it returns a single measurement per waveform. If you want to measure multiple pulses in  a single waveform, you have change the pulse number. This would do in a loop. Put the function inside a while loop and wire the loop's iteration terminal (add one to it) and terminate the loop when you get an error. Autoindex the results out of the loop to create an array. You'll also need to remove the last element in the array
0 Kudos
Message 14 of 16
(867 Views)

Hi Dennis,

big thanks for your help. The diagram you posted works well. However, with my 2M data, sometimes it took 6 hours to finish running. Do you happen to know that there is a way that I can speed up the process.

0 Kudos
Message 15 of 16
(839 Views)
Hi,

From looking at the VI that Dennis provided you, I think that the execution time is going to be dependent on your system and the number of datapoints.  I don't know that there's any way to speed up the process besides making sure that you don't have unnecessary applications running in the background.

Regards,
Andrew W
National Instruments
0 Kudos
Message 16 of 16
(809 Views)